Visual Servoing Platform  version 3.0.1
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
vpFrameGrabber Class Referenceabstract

#include <visp3/core/vpFrameGrabber.h>

+ Inheritance diagram for vpFrameGrabber:

Public Member Functions

 vpFrameGrabber ()
virtual ~vpFrameGrabber ()
virtual void open (vpImage< unsigned char > &I)=0
virtual void open (vpImage< vpRGBa > &I)=0
virtual void acquire (vpImage< unsigned char > &I)=0
virtual void acquire (vpImage< vpRGBa > &I)=0
virtual void close ()=0
Inherited functionalities from vpFramegrabber
unsigned int getHeight () const
unsigned int getWidth () const

Public Attributes

bool init

Protected Attributes

unsigned int height
unsigned int width

Detailed Description

Base class for all video devices. It is designed to provide a front end to video sources.

This class should provide a virtual function that allows the acquisition of an image.

The example below shows how to use this class.

#include <visp3/core/vpConfig.h>
#include <visp3/core/vpImage.h>
#include <visp3/io/vpImageIo.h>
#include <visp3/sensor/vpV4l2Grabber.h>
#include <visp3/sensor/vp1394TwoGrabber.h>
int main()
#if defined(VISP_HAVE_V4L2) || defined(VISP_HAVE_DC1394)
vpFrameGrabber *g; // Generic framegrabber
#if defined( VISP_HAVE_DC1394 )
// specific settings for firewire grabber based on libdc1394-2.x version
g = g_1394_2;
#elif defined( VISP_HAVE_V4L2 )
// specific settings for Video For Linux Two grabber
g_v4l2->setInput(2); // Input 2 on the board
g_v4l2->setWidth(384); // Acquired images are 768 width
g_v4l2->setHeight(288); // Acquired images are 576 height
g_v4l2->setNBuffers(3); // 3 ring buffers to ensure real-time acquisition
g = g_v4l2;
g->open(I); // Open the framegrabber
g->acquire(I); // Acquire an image
vpImageIo::write(I, "image.pgm"); // Write image on the disk
Eric Marchand (, Irisa / Inria Rennes

Definition at line 102 of file vpFrameGrabber.h.

Constructor & Destructor Documentation

vpFrameGrabber::vpFrameGrabber ( )

Definition at line 121 of file vpFrameGrabber.h.

virtual vpFrameGrabber::~vpFrameGrabber ( )

Definition at line 122 of file vpFrameGrabber.h.

Member Function Documentation

virtual void vpFrameGrabber::acquire ( vpImage< unsigned char > &  I)
pure virtual
virtual void vpFrameGrabber::acquire ( vpImage< vpRGBa > &  I)
pure virtual
virtual void vpFrameGrabber::close ( )
pure virtual

This virtual function is used to de-allocate the memory used by a specific frame grabber

Implemented in vp1394TwoGrabber, vpV4l2Grabber, vpVideoReader, vp1394CMUGrabber, vpFlyCaptureGrabber, vpDiskGrabber, and vpDirectShowGrabber.

unsigned int vpFrameGrabber::getHeight ( ) const

Return the number of rows in the image.

AROgre.cpp, and AROgreBasic.cpp.

Definition at line 115 of file vpFrameGrabber.h.

unsigned int vpFrameGrabber::getWidth ( ) const

Return the number of columns in the image.

AROgre.cpp, and AROgreBasic.cpp.

Definition at line 117 of file vpFrameGrabber.h.

virtual void vpFrameGrabber::open ( vpImage< unsigned char > &  I)
pure virtual
virtual void vpFrameGrabber::open ( vpImage< vpRGBa > &  I)
pure virtual

Member Data Documentation