Libargus API Libargus Camera API

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Public Member Functions | Static Public Member Functions | Protected Member Functions
Argus::IBuffer Class Reference
Buffer

Interface that provides the core methods for Buffer objects. More...

`#include <BufferStream.h>`

Inheritance diagram for Argus::IBuffer:

List of all members.

## Public Member Functions
virtual BufferType | getBufferType () const =0
| Returns the BufferType of the Buffer.
virtual SyncType | getSyncType () const =0
| Returns the SyncType of the Buffer.
virtual void | setClientData (const void *clientData)=0
| Sets the client data for the Buffer.
virtual const void * | getClientData () const =0
| Returns the client data from the Buffer.
virtual const CaptureMetadata * | getMetadata () const =0
| Returns the CaptureMetadata object that was attached to this Buffer when it was last output to the stream from the result of a successful capture request.

## Static Public Member Functions
static const InterfaceID & | id ()

## Protected Member Functions
| ~IBuffer ()
Protected Member Functions inherited from Argus::Interface
| Interface ()
| ~Interface ()

## Detailed Description

Interface that provides the core methods for Buffer objects.

Definition at line 354 of file BufferStream.h.

## Constructor & Destructor Documentation

Argus::IBuffer::~IBuffer | ( |  | ) |
| inline protected

Definition at line 403 of file BufferStream.h.

## Member Function Documentation

virtual BufferType Argus::IBuffer::getBufferType | ( |  | ) | const
| pure virtual

Returns the BufferType of the Buffer.

virtual const void* Argus::IBuffer::getClientData | ( |  | ) | const
| pure virtual

Returns the client data from the Buffer.

virtual const CaptureMetadata* Argus::IBuffer::getMetadata | ( |  | ) | const
| pure virtual

Returns the CaptureMetadata object that was attached to this Buffer when it was last output to the stream from the result of a successful capture request.

This method should only ever be called while the Buffer is in an acquired state; ie. the time between when the Buffer was acquired by IBufferOutputStream::acquireBuffer and when it was released by IBufferOutputStream::releaseBuffer. If called outside of the acquired state, NULL will be returned. Similarly, the returned object will only remain valid so long as the Buffer is acquired – if this object or any of its interfaces are accessed outside of the acquired state, undefined results or abnormal process termination may occur.

Metadata will only be written if metadata is enabled for the stream (see IBufferOutputStreamSettings::setMetadataEnable). NULL may also still be returned if there were any capture errors or metadata is otherwise unavailable.

virtual SyncType Argus::IBuffer::getSyncType | ( |  | ) | const
| pure virtual

Returns the SyncType of the Buffer.

static const InterfaceID& Argus::IBuffer::id | ( |  | ) |
| inline static

Definition at line 357 of file BufferStream.h.

virtual void Argus::IBuffer::setClientData | ( | const void * | clientData | ) |
| pure virtual

Sets the client data for the Buffer.

This is provided as a convenience for applications to be able to map Buffers to other client-managed data. It is not used at all by the libargus implementation, and is returned as-is by getClientData. Default value: NULL

Parameters:

  [in] | clientData | The client data pointer to set in the buffer.

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

- include/Argus/BufferStream.h