IC Imaging Control C++

GrabberListener::frameReady Method

GrabberListener::frameReady Method

This method is called after the video capture device has copied a new frame into a memory buffer.
virtual void frameReady( Grabber& caller, smart_ptr<MemBuffer> pBuffer, DWORD FrameNumber );
Parameter Description

Identifies the Grabber object that called this method.


Specifies a pointer to the MemBuffer that contains the new frame.


Specifies the number of the frame for which this method is called. The frame number is incremented for every frame that is copied to a buffer. A call to Grabber::startLive resets the frame numbers to 0.


After a call to Grabber::startLive, the first frame that is copied to a buffer gets the frame number 0. Please note that the frame count is incremented for every copied frame. Therefore, the frame count and the index of a buffer in the MemBufferCollection is not identical if the number of copied frames exceeds the number of buffers in the MemBufferCollection.

This callback method is only called, if the GrabberListener object was registered by a call to Grabber::addListener with the parameter eFRAMEREADY or eALL.

Exceptions that occur in the frameReady event will get lost in the system. Therefore, bugs in the code that cause an exception cannot be recognized. To avoid this, all code in the event handler should be enclosed by a try ... catch block. If you need to display error messages, do not use a message box. Use a "debug trace" instead (e.g. TRACE(...) ). This is very important, because otherwise the system may run into a deadlock which will cause the application to hang.

See also: GrabberListener, Grabber::addListener, GrabberListener::tListenerType, GrabberListener::deviceLost, GrabberListener::overlayCallback, MemBuffer

<< GrabberListener

Get in touch with us

About The Imaging Source

Established in 1990, The Imaging Source is one of the leading manufacturers of industrial cameras, frame grabbers and video converters for production automation, quality assurance, logistics, medicine, science and security.

Our comprehensive range of cameras with USB 3.1, USB 3.0, USB 2.0, GigE interfaces and other innovative machine vision products are renowned for their high quality and ability to meet the performance requirements of demanding applications.

Automated Imaging Association ISO 9001:2015 certified

Contact us