Visual Servoing Platform  version 3.1.0
vpFrameGrabber.h
1 /****************************************************************************
2  *
3  * This file is part of the ViSP software.
4  * Copyright (C) 2005 - 2017 by Inria. All rights reserved.
5  *
6  * This software is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  * See the file LICENSE.txt at the root directory of this source
11  * distribution for additional information about the GNU GPL.
12  *
13  * For using ViSP with software that can not be combined with the GNU
14  * GPL, please contact Inria about acquiring a ViSP Professional
15  * Edition License.
16  *
17  * See http://visp.inria.fr for more information.
18  *
19  * This software was developed at:
20  * Inria Rennes - Bretagne Atlantique
21  * Campus Universitaire de Beaulieu
22  * 35042 Rennes Cedex
23  * France
24  *
25  * If you have questions regarding the use of this file, please contact
26  * Inria at visp@inria.fr
27  *
28  * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
29  * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
30  *
31  * Description:
32  * Frame grabbing.
33  *
34  * Authors:
35  * Eric Marchand
36  *
37  *****************************************************************************/
38 
39 #ifndef vpFrameGrabber_hh
40 #define vpFrameGrabber_hh
41 
42 #include <visp3/core/vpImage.h>
43 #include <visp3/core/vpRGBa.h>
44 
101 class VISP_EXPORT vpFrameGrabber
102 {
103 public:
104  bool init;
105 
106 protected:
107  unsigned int height;
108  unsigned int width;
109 
110 public:
113  inline unsigned int getHeight() const { return height; }
116  inline unsigned int getWidth() const { return width; }
118 
119 public:
120  vpFrameGrabber() : init(false), height(0), width(0){};
121  virtual ~vpFrameGrabber() { ; }
122 
123  virtual void open(vpImage<unsigned char> &I) = 0;
124  virtual void open(vpImage<vpRGBa> &I) = 0;
125 
126  virtual void acquire(vpImage<unsigned char> &I) = 0;
127  virtual void acquire(vpImage<vpRGBa> &I) = 0;
128 
133  virtual void close() = 0;
134 };
135 
136 #endif
virtual ~vpFrameGrabber()
unsigned int height
Number of rows in the image.
Base class for all video devices. It is designed to provide a front end to video sources.
unsigned int getWidth() const
Return the number of columns in the image.
bool init
Set to true if the frame grabber has been initialized.
unsigned int width
Number of columns in the image.