Pleora Technologies Inc. eBUS SDK v7.0.1.7536 API



Loading...
Searching...
No Matches
IPvGenericDataContainer Class Referenceabstract

Interface used to read from a GenDC container. More...

#include <PvGenericDataContainer.h>

Public Member Functions

virtual uint32_t GetComponentCount () const =0
 Component count of the GenDC container.
 
virtual const IPvGenericDataComponentGetComponent (uint32_t aIndex) const =0
 Indexed component const accessor.
 
virtual IPvGenericDataComponentGetComponent (uint32_t aIndex)=0
 Indexed component accessor.
 
virtual const IPvGenericDataComponentoperator[] (uint32_t aIndex) const =0
 Indexed component const accessor.
 
virtual IPvGenericDataComponentoperator[] (uint32_t aIndex)=0
 Indexed component accessor.
 
virtual uint64_t GetDataSize () const =0
 Gets the container's cumulative data size for all its parts, in bytes.
 
virtual uint64_t GetDescriptorSize () const =0
 Gets the container's cumulative headers sizes for all its components and parts, as well as the container itself.
 
virtual bool IsValid () const =0
 Indicates if the container is valid. The container is valid if the container descriptor was processed and the parts have been decoded.
 
virtual const GenDCContainerHeader * GetHeader () const =0
 Returns a const pointer to the underlying GenDC container header.
 
virtual GenDCContainerHeader * GetMutableHeader ()=0
 Returns a mutable pointer to the underlying GenDC container header.
 
virtual uint32_t AddComponent (PvComponentType aComponentType)=0
 Creates a new component in the container.
 

Detailed Description

Interface used to read from a GenDC container.

To receive and read GenDC data from a GigE Vision device, use a PvStream or PvPipeline object to retrieve a PvBuffer and then call PvBuffer::GetGenDC on this buffer to retrieve an IPvGenericDataContainer.

Each container is represented by one or more components that can be accessed through the IPvGenericDataComponent interface. In turn, each of these components are formed by one or more parts, represented by the the IPvGenericDataPart interface.

Retrieve the component count with #IPvGenericDataComponent::GetComponentCount and then access the individual parts using IPvGenericDataComponent::GetPart.

Member Function Documentation

◆ AddComponent()

virtual uint32_t IPvGenericDataContainer::AddComponent ( PvComponentType  aComponentType)
pure virtual

Creates a new component in the container.

Adds a new component of the specified type to the container and returns its index. The component can then be accessed using GetComponent() with the returned index.

Parameters
[in]aComponentTypeThe type of component to create (e.g., PvComponentIntensity, PvComponentRange).
Returns
The zero-based index of the newly created component.

◆ GetComponent() [1/2]

virtual const IPvGenericDataComponent * IPvGenericDataContainer::GetComponent ( uint32_t  aIndex) const
pure virtual

Indexed component const accessor.

Parameters
[in]aIndexZero-based index of the component.
Returns
Returns a const component interface from its index.

◆ GetComponent() [2/2]

virtual IPvGenericDataComponent * IPvGenericDataContainer::GetComponent ( uint32_t  aIndex)
pure virtual

Indexed component accessor.

Parameters
[in]aIndexZero-based index of the component.
Returns
Returns a component interface from its index.

◆ GetComponentCount()

virtual uint32_t IPvGenericDataContainer::GetComponentCount ( ) const
pure virtual

Component count of the GenDC container.

Returns
Component count.

◆ GetDataSize()

virtual uint64_t IPvGenericDataContainer::GetDataSize ( ) const
pure virtual

Gets the container's cumulative data size for all its parts, in bytes.

If the container is final, the integer returned is the valid data size. Otherwise, the size is the maximum possible value all the component parts can hold.

Returns
Data size in bytes.

◆ GetDescriptorSize()

virtual uint64_t IPvGenericDataContainer::GetDescriptorSize ( ) const
pure virtual

Gets the container's cumulative headers sizes for all its components and parts, as well as the container itself.

Returns
Data size in bytes.

◆ GetHeader()

virtual const GenDCContainerHeader * IPvGenericDataContainer::GetHeader ( ) const
pure virtual

Returns a const pointer to the underlying GenDC container header.

This pointer references descriptor-owned memory and remains valid as long as the container stays valid. The header must not be modified through this pointer.

Returns
Const pointer to the GenDC container header.

◆ GetMutableHeader()

virtual GenDCContainerHeader * IPvGenericDataContainer::GetMutableHeader ( )
pure virtual

Returns a mutable pointer to the underlying GenDC container header.

This pointer can be used to edit the container header fields directly, in accordance with the GenDC specification. Callers must ensure synchronization when modifying headers.

Returns
Mutable pointer to the GenDC container header.

◆ IsValid()

virtual bool IPvGenericDataContainer::IsValid ( ) const
pure virtual

Indicates if the container is valid. The container is valid if the container descriptor was processed and the parts have been decoded.

Returns
True if the container is valid, false otherwise.

◆ operator[]() [1/2]

virtual const IPvGenericDataComponent * IPvGenericDataContainer::operator[] ( uint32_t  aIndex) const
pure virtual

Indexed component const accessor.

Parameters
[in]aIndexZero-based index of the component.
Returns
Returns a const component interface from its index.

◆ operator[]() [2/2]

virtual IPvGenericDataComponent * IPvGenericDataContainer::operator[] ( uint32_t  aIndex)
pure virtual

Indexed component accessor.

Parameters
[in]aIndexZero-based index of the component.
Returns
Returns a component interface from its index.

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

Copyright (c) 2002-2026 Pleora Technologies Inc.
www.pleora.com