Public Member Functions | Private Member Functions | Private Attributes
rcg::Stream Class Reference

The stream class encapsulates a Genicam stream. More...

#include <stream.h>

List of all members.

Public Member Functions

void close ()
 Closes the stream.
size_t getBufAlignment ()
 Returns some information about the stream.
size_t getBufAnnounceMin ()
 Returns some information about the stream.
bool getDefinesPayloadsize ()
 Returns some information about the stream.
void * getHandle () const
 Get internal stream handle.
const std::string & getID () const
 Get the internal ID of this stream.
bool getIsGrabbing ()
 Returns some information about the stream.
std::shared_ptr
< GenApi::CNodeMapRef
getNodeMap ()
 Returns the node map of this object.
size_t getNumAnnounced ()
 Returns some information about the stream.
size_t getNumAwaitDelivery ()
 Returns some information about the stream.
size_t getNumChunksMax ()
 Returns some information about the stream.
uint64_t getNumDelivered ()
 Returns some information about the stream.
size_t getNumQueued ()
 Returns some information about the stream.
uint64_t getNumStarted ()
 Returns some information about the stream.
uint64_t getNumUnderrun ()
 Returns some information about the stream.
std::shared_ptr< DevicegetParent () const
 Returns the pointer to the parent device object.
size_t getPayloadSize ()
 Returns some information about the stream.
std::string getTLType ()
 Returns some information about the stream.
const Buffergrab (int64_t timeout=-1)
 Wait for the next image or data and return it in a buffer object.
void open ()
 Opens the stream for working with it.
void startStreaming (int na=-1)
 Allocates buffers and registers internal events if necessary and starts streaming.
void stopStreaming ()
 Stops streaming.
 Stream (const std::shared_ptr< Device > &parent, const std::shared_ptr< const GenTLWrapper > &gentl, const char *id)
 Constructs a stream class.
 ~Stream ()

Private Member Functions

Streamoperator= (const Stream &)
 Stream (class Stream &)

Private Attributes

size_t bn
Buffer buffer
std::shared_ptr< CPortcport
void * event
std::shared_ptr< const
GenTLWrapper
gentl
std::string id
std::recursive_mutex mtx
int n_open
std::shared_ptr
< GenApi::CNodeMapRef
nodemap
std::shared_ptr< Deviceparent
void * stream

Detailed Description

The stream class encapsulates a Genicam stream.

NOTE: A GenTLException is thrown in case of a severe error.

Definition at line 55 of file stream.h.


Constructor & Destructor Documentation

rcg::Stream::Stream ( const std::shared_ptr< Device > &  parent,
const std::shared_ptr< const GenTLWrapper > &  gentl,
const char *  id 
)

Constructs a stream class.

Streams must only be created by the device class.

Definition at line 53 of file stream.cc.

Definition at line 67 of file stream.cc.

rcg::Stream::Stream ( class Stream ) [private]

Member Function Documentation

Closes the stream.

Each call of open() must be followed by a call to close() at some point in time.

Definition at line 115 of file stream.cc.

Returns some information about the stream.

NOTE: open() must have called before calling this method.

Returns:
Buffer alignment in bytes.

Definition at line 453 of file stream.cc.

Returns some information about the stream.

NOTE: open() must have called before calling this method.

Returns:
Min number of buffers to announce before acq can start, if known.

Definition at line 447 of file stream.cc.

Returns some information about the stream.

NOTE: open() must have called before calling this method.

Returns:
Flag that indicated that this data stream defines a payload size independent from the remote device.

Definition at line 411 of file stream.cc.

void * rcg::Stream::getHandle ( ) const

Get internal stream handle.

Returns:
Internal handle.

Definition at line 471 of file stream.cc.

const std::string & rcg::Stream::getID ( ) const

Get the internal ID of this stream.

Returns:
ID.

Definition at line 87 of file stream.cc.

Returns some information about the stream.

NOTE: open() must have called before calling this method.

Returns:
Flag indicating whether the acquisition engine is started or not.

Definition at line 405 of file stream.cc.

Returns the node map of this object.

NOTE: open() must be called before calling this method. The returned pointer remains valid until close() of this object is called.

Returns:
Node map of this object.

Definition at line 459 of file stream.cc.

Returns some information about the stream.

NOTE: open() must have called before calling this method.

Returns:
Number of announced buffers.

Definition at line 375 of file stream.cc.

Returns some information about the stream.

NOTE: open() must have called before calling this method.

Returns:
Number of buffers in the output queue.

Definition at line 387 of file stream.cc.

Returns some information about the stream.

NOTE: open() must have called before calling this method.

Returns:
Max number of chunks in a buffer, if known.

Definition at line 441 of file stream.cc.

Returns some information about the stream.

NOTE: open() must have called before calling this method.

Returns:
Number of delivered buffers since last acquisition start.

Definition at line 363 of file stream.cc.

Returns some information about the stream.

NOTE: open() must have called before calling this method.

Returns:
Number of buffers in the input pool.

Definition at line 381 of file stream.cc.

Returns some information about the stream.

NOTE: open() must have called before calling this method.

Returns:
Number of buffers started in the acquisition engine.

Definition at line 393 of file stream.cc.

Returns some information about the stream.

NOTE: open() must have called before calling this method.

Returns:
Number of lost buffers due to queue underrun.

Definition at line 369 of file stream.cc.

std::shared_ptr< Device > rcg::Stream::getParent ( ) const

Returns the pointer to the parent device object.

Returns:
Pointer to parent device object.

Definition at line 82 of file stream.cc.

Returns some information about the stream.

NOTE: open() must have called before calling this method.

Returns:
Size of the expected data in bytes.

Definition at line 399 of file stream.cc.

std::string rcg::Stream::getTLType ( )

Returns some information about the stream.

NOTE: open() must have called before calling this method.

Returns:
Transport layer technology that is supported.

Definition at line 417 of file stream.cc.

const Buffer * rcg::Stream::grab ( int64_t  timeout = -1)

Wait for the next image or data and return it in a buffer object.

The buffer is valid until the next call to grab.

Parameters:
timeoutTimeout in ms. A value < 0 sets waiting time to infinite.
Returns:
Pointer to received buffer or 0 in case of an error or interrupt.

Definition at line 269 of file stream.cc.

Opens the stream for working with it.

The stream may be opened multiple times. However, for each open(), the close() method must be called as well.

Definition at line 92 of file stream.cc.

Stream& rcg::Stream::operator= ( const Stream ) [private]
void rcg::Stream::startStreaming ( int  na = -1)

Allocates buffers and registers internal events if necessary and starts streaming.

Parameters:
naNumber of buffers to acquire. Set <= 0 for infinity.

Definition at line 135 of file stream.cc.

Stops streaming.

Definition at line 239 of file stream.cc.


Member Data Documentation

size_t rcg::Stream::bn [private]

Definition at line 291 of file stream.h.

Definition at line 280 of file stream.h.

std::shared_ptr<CPort> rcg::Stream::cport [private]

Definition at line 293 of file stream.h.

void* rcg::Stream::event [private]

Definition at line 290 of file stream.h.

std::shared_ptr<const GenTLWrapper> rcg::Stream::gentl [private]

Definition at line 283 of file stream.h.

std::string rcg::Stream::id [private]

Definition at line 284 of file stream.h.

std::recursive_mutex rcg::Stream::mtx [private]

Definition at line 286 of file stream.h.

int rcg::Stream::n_open [private]

Definition at line 288 of file stream.h.

std::shared_ptr<GenApi::CNodeMapRef> rcg::Stream::nodemap [private]

Definition at line 294 of file stream.h.

std::shared_ptr<Device> rcg::Stream::parent [private]

Definition at line 282 of file stream.h.

void* rcg::Stream::stream [private]

Definition at line 289 of file stream.h.


The documentation for this class was generated from the following files:


rc_genicam_api
Author(s): Heiko Hirschmueller
autogenerated on Thu Jun 6 2019 18:42:49