Logo
Programmer's Guide Baumer GAPI SDK Reference v2.10.0
Classes | Public Member Functions | Friends | List of all members
BGAPI2::BufferList Class Reference

This class is used for discovery and listing of buffer objects. More...

#include <bgapi2_genicam.hpp>

Classes

class  iterator
 This class provides a iterator that can read or modify any element in the list. More...
 

Public Member Functions

void Add (Buffer *pBuffer)
 This function adds a Buffer object to the buffer list. If the Buffer object is created without external memory, this function allocates the necessary memory. More...
 
void * RevokeBuffer (Buffer *pBuffer)
 This function removes a Buffer object from the buffer list. More...
 
void clear ()
 This function removes all Buffer objects from the Buffer list. More...
 
bo_uint64 size ()
 This function delivers the number of Buffer objects in the Buffer list. More...
 
Bufferoperator[] (const String &bufid)
 This operator allows the direct access to an object of the Buffer list. More...
 
void FlushInputToOutputQueue ()
 This function moves all Buffer objects from the input buffer queue to the output buffer queue. See function Buffer::QueueBuffer and DataStreamEventControl::GetFilledBuffer. More...
 
void FlushAllToInputQueue ()
 This function moves all Buffer objects of the Buffer list to the input buffer queue even those in the output buffer queue. See function Buffer::QueueBuffer and DataStreamEventControl::GetFilledBuffer. More...
 
void FlushUnqueuedToInputQueue ()
 This function moves all free (not queued) Buffer objects of the Buffer list to the input buffer queue. See function Buffer::QueueBuffer. More...
 
void DiscardOutputBuffers ()
 This function discards all Buffer objects in the output buffer queue. The discarded Buffer objects are free. More...
 
void DiscardAllBuffers ()
 This function discards all Buffer objects in the input buffer queue and output buffer queue. The discarded Buffer objects are free. More...
 
bo_uint64 GetDeliveredCount ()
 This function delivers the number of Buffer objects that have been delivered since the start of the DataStream object. More...
 
bo_uint64 GetUnderrunCount ()
 This function delivers the number of lost frames due to queue underrun since the DataStream object was started. This counter is incremented every time the data could not be acquired because there was no Buffer object in the input buffer queue. More...
 
bo_uint64 GetAnnouncedCount ()
 This function delivers the number of Buffer objects in the Buffer list. Same as BufferList::size. More...
 
bo_uint64 GetQueuedCount ()
 This function delivers the number of Buffer objects in the input buffer queue. See function Buffer::QueueBuffer. More...
 
bo_uint64 GetAwaitDeliveryCount ()
 This function delivers the number of Buffer objects in the output buffer queue. See function DataStreamEventControl::GetFilledBuffer. More...
 
bo_uint64 GetStartedCount ()
 This function delivers the number of Buffer objects which are currently being filled. More...
 
iterator begin ()
 This function delivers an iterator on the top of the Buffer list. More...
 
iterator end ()
 This function delivers an iterator at the end of the Buffer list. More...
 
iterator find (const String &_keyval)
 This function delivers an iterator on an object to be found. The object is not found, this functions delivers an end-iterator. More...
 
void * GetReserved ()
 Undocumented function.
 

Friends

class DataStream
 

Detailed Description

This class is used for discovery and listing of buffer objects.

Definition at line 677 of file bgapi2_genicam.hpp.

Member Function Documentation

◆ Add()

BGAPI2::BufferList::Add ( Buffer pBuffer)

This function adds a Buffer object to the buffer list. If the Buffer object is created without external memory, this function allocates the necessary memory.

See the Buffer constructors Buffer::Buffer(), Buffer::Buffer(void * pUserObj) and Buffer::Buffer(void *pUserBuffer, bo_uint64 uUserBufferSize, void *pUserObj).

Parameters
pBufferThe Buffer object to be added.
Exceptions
Exceptions::InvalidParameterExceptionThe passed parameter is not a valid Buffer object.
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.

◆ begin()

BGAPI2::BufferList::begin ( )

This function delivers an iterator on the top of the Buffer list.

Returns
iterator The iterator on the top of the Buffer list.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.

◆ clear()

BGAPI2::BufferList::clear ( )

This function removes all Buffer objects from the Buffer list.

Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.

◆ DiscardAllBuffers()

BGAPI2::BufferList::DiscardAllBuffers ( )

This function discards all Buffer objects in the input buffer queue and output buffer queue. The discarded Buffer objects are free.

Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.

◆ DiscardOutputBuffers()

BGAPI2::BufferList::DiscardOutputBuffers ( )

This function discards all Buffer objects in the output buffer queue. The discarded Buffer objects are free.

Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.

◆ end()

BGAPI2::BufferList::end ( )

This function delivers an iterator at the end of the Buffer list.

Returns
iterator The iterator at the end of the Buffer list.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.

◆ find()

BGAPI2::BufferList::find ( const String _keyval)

This function delivers an iterator on an object to be found. The object is not found, this functions delivers an end-iterator.

Parameters
_keyvalThe ID to the object to be found.
Returns
iterator The iterator to the found object.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.

◆ FlushAllToInputQueue()

BGAPI2::BufferList::FlushAllToInputQueue ( )

This function moves all Buffer objects of the Buffer list to the input buffer queue even those in the output buffer queue. See function Buffer::QueueBuffer and DataStreamEventControl::GetFilledBuffer.

Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.

◆ FlushInputToOutputQueue()

BGAPI2::BufferList::FlushInputToOutputQueue ( )

This function moves all Buffer objects from the input buffer queue to the output buffer queue. See function Buffer::QueueBuffer and DataStreamEventControl::GetFilledBuffer.

Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.

◆ FlushUnqueuedToInputQueue()

BGAPI2::BufferList::FlushUnqueuedToInputQueue ( )

This function moves all free (not queued) Buffer objects of the Buffer list to the input buffer queue. See function Buffer::QueueBuffer.

Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.

◆ GetAnnouncedCount()

BGAPI2::BufferList::GetAnnouncedCount ( )

This function delivers the number of Buffer objects in the Buffer list. Same as BufferList::size.

Returns
bo_uint64 The number of Buffer objects in the Buffer list.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.

◆ GetAwaitDeliveryCount()

BGAPI2::BufferList::GetAwaitDeliveryCount ( )

This function delivers the number of Buffer objects in the output buffer queue. See function DataStreamEventControl::GetFilledBuffer.

Returns
bo_uint64 The number of Buffer objects in the output buffer queue.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.

◆ GetDeliveredCount()

BGAPI2::BufferList::GetDeliveredCount ( )

This function delivers the number of Buffer objects that have been delivered since the start of the DataStream object.

Returns
bo_uint64 The number of Buffer object that have been delivered since the start of the DataStream object.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.

◆ GetQueuedCount()

BGAPI2::BufferList::GetQueuedCount ( )

This function delivers the number of Buffer objects in the input buffer queue. See function Buffer::QueueBuffer.

Returns
bo_uint64 The number of Buffer objects in the input buffer queue.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.

◆ GetStartedCount()

BGAPI2::BufferList::GetStartedCount ( )

This function delivers the number of Buffer objects which are currently being filled.

Returns
bo_uint64 The number of Buffer objects which are currently being filled.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.

◆ GetUnderrunCount()

BGAPI2::BufferList::GetUnderrunCount ( )

This function delivers the number of lost frames due to queue underrun since the DataStream object was started. This counter is incremented every time the data could not be acquired because there was no Buffer object in the input buffer queue.

Returns
bo_uint64 The number of lost frames.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.

◆ operator[]()

BGAPI2::BufferList::operator[] ( const String bufid)

This operator allows the direct access to an object of the Buffer list.

Parameters
bufidFor this ID, the associated Buffer object is delivered.
Returns
Buffer* The requested Buffer object.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::InvalidParameterExceptionNo object in the Buffer list has the passed ID.

◆ RevokeBuffer()

BGAPI2::BufferList::RevokeBuffer ( Buffer pBuffer)

This function removes a Buffer object from the buffer list.

Parameters
pBufferThe Buffer object to be removed.
Returns
void* This function delivers the user pointer of the Buffer object. See constructor of Buffer class.
Exceptions
Exceptions::InvalidParameterExceptionThe passed parameter is not a valid Buffer object.
Exceptions::ObjectInvalidExceptionThe calling object is not valid.
Exceptions::LowLevelExceptionGenTL Producer error. Use IException::GetErrorDescription or check trace output for more detailed error information.

◆ size()

BGAPI2::BufferList::size ( )

This function delivers the number of Buffer objects in the Buffer list.

Returns
bo_uint64 The number of Buffer objects in the Buffer list.
Exceptions
Exceptions::ObjectInvalidExceptionThe calling object is not valid.

The documentation for this class was generated from the following file:
bgapi: BGAPI::Camera Class Reference

Jan, 14 2020
Baumer Optronic GmbH, Badstrasse 30, 01454 D-Radeberg, Tel:+49-3528-4386-0, Fax:+49-3528-4386-86, Email:support.cameras@baumer.com