Skip to content

Pylon::GrabResult#

Module: Low Level API

Low Level API: A grab result that combines the used image buffer and status information. More…

#include <pylon/Result.h>

Public Functions#

Name
bool Succeeded() const
True if status is grabbed.
StreamBufferHandle Handle() const
Get the buffer handle.
void * Buffer() const
Get the pointer to the buffer.
EGrabStatus Status() const
Get the grab status.
const void * Context() const
Get the pointer the user provided context.
EPayloadType GetPayloadType() const
Get the actual payload type.
EPixelType GetPixelType() const
Get the actual pixel type. This is only defined in case of image data.
uint64_t GetTimeStamp() const
Get the camera specific tick count.
int32_t GetSizeX() const
Get the actual number of columns in pixel. This is only defined in case of image data.
int32_t GetSizeY() const
Get the actual number of rows in pixel. This is only defined in case of image data.
int32_t GetOffsetX() const
Get the actual starting column. This is only defined in case of image data.
int32_t GetOffsetY() const
Get the actual starting row. This is only defined in case of image data.
int32_t GetPaddingX() const
Get the number of extra data at the end of each row in bytes. This is only defined in case of image data.
int32_t GetPaddingY() const
Get the number of extra data at the end of the image data in bytes. This is only defined in case of image data.
int64_t GetPayloadSize() const
Get the number of valid bytes in the buffer returned by Buffer().
size_t GetPayloadSize_t() const
Get the number of valid bytes in the buffer returned by Buffer() as size_t.
String_t GetErrorDescription() const
Get a description of the current error.
uint32_t GetErrorCode() const
Get the current error code.
CGrabResultImageRef GetImage() const
Provides an adapter from the grab result to Pylon::IImage interface.
uint64_t GetBlockID() const
Get the block ID of the grabbed frame (camera device specific).
CPylonDataContainer GetDataContainer() const
Returns the grab result as a CPylonDataContainer.
size_t GetDataComponentCount() const
Returns the number of components contained in the container.
CPylonDataComponent GetDataComponent(size_t index)
Returns a specific component from the container.
size_t GetBufferSize() const
Get the size of the buffer returned by Buffer().

Detailed Description#

class Pylon::GrabResult;

Low Level API: A grab result that combines the used image buffer and status information.

Note that depending on the used interface technology, the specific camera and the situation some of the attributes are not meaningful, e. g. timestamp in case of an canceled grab.

Public Functions Documentation#

function Succeeded#

inline bool Succeeded() const

True if status is grabbed.

function Handle#

inline StreamBufferHandle Handle() const

Get the buffer handle.

function Buffer#

inline void * Buffer() const

Get the pointer to the buffer.

function Status#

inline EGrabStatus Status() const

Get the grab status.

function Context#

inline const void * Context() const

Get the pointer the user provided context.

function GetPayloadType#

inline EPayloadType GetPayloadType() const

Get the actual payload type.

function GetPixelType#

inline EPixelType GetPixelType() const

Get the actual pixel type. This is only defined in case of image data.

function GetTimeStamp#

inline uint64_t GetTimeStamp() const

Get the camera specific tick count.

In case of GigE-Vision this describes when the image exposure was started. Cameras that do not support this feature return zero. If supported this may be used to determine which ROIs were acquired simultaneously.

function GetSizeX#

inline int32_t GetSizeX() const

Get the actual number of columns in pixel. This is only defined in case of image data.

function GetSizeY#

inline int32_t GetSizeY() const

Get the actual number of rows in pixel. This is only defined in case of image data.

function GetOffsetX#

inline int32_t GetOffsetX() const

Get the actual starting column. This is only defined in case of image data.

function GetOffsetY#

inline int32_t GetOffsetY() const

Get the actual starting row. This is only defined in case of image data.

function GetPaddingX#

inline int32_t GetPaddingX() const

Get the number of extra data at the end of each row in bytes. This is only defined in case of image data.

function GetPaddingY#

inline int32_t GetPaddingY() const

Get the number of extra data at the end of the image data in bytes. This is only defined in case of image data.

function GetPayloadSize#

inline int64_t GetPayloadSize() const

Get the number of valid bytes in the buffer returned by Buffer().

function GetPayloadSize_t#

inline size_t GetPayloadSize_t() const

Get the number of valid bytes in the buffer returned by Buffer() as size_t.

function GetErrorDescription#

inline String_t GetErrorDescription() const

Get a description of the current error.

function GetErrorCode#

inline uint32_t GetErrorCode() const

Get the current error code.

function GetImage#

inline CGrabResultImageRef GetImage() const

Provides an adapter from the grab result to Pylon::IImage interface.

Attention: The returned reference is only valid as long the grab result is not destroyed.

This returned adapter allows passing the grab result to saving functions or image format converter.

function GetBlockID#

inline uint64_t GetBlockID() const

Get the block ID of the grabbed frame (camera device specific).

Attention: A block ID of value UINT64_MAX indicates that the Block ID is invalid and must not be used.

GigE Camera Devices

If the Extended ID mode is disabled (default), the sequence number starts with 1 and wraps at 65535. If the Extended ID mode is enabled, the sequence number starts with 1 and uses the full 64-bit unsigned integer value range.

USB Camera Devices

The sequence number starts with 0 and uses the full 64 Bit range.

A value of 0 indicates that this feature is not supported by the camera. You can configure the Extended ID mode by setting the GevGVSPExtendedIDMode or the BslGevGVSPExtendedIDMode parameter, if available. The Instant Camera class and the pylon GigE stream grabber provide additional parameters for controlling the Extended ID mode.

function GetDataContainer#

CPylonDataContainer GetDataContainer() const

Returns the grab result as a CPylonDataContainer.

function GetDataComponentCount#

size_t GetDataComponentCount() const

Returns the number of components contained in the container.

Return: Returns the number of components contained in the container.

Error Safety:

Does not throw C++ exceptions.

Thread Safety:

This class is not thread-safe. If you access the same instance from multiple threads, you must make sure to synchronize the access accordingly.

You can use the return value to iterate over the existing components by calling Pylon::CPylonDataContainer::GetDataComponent().

function GetDataComponent#

CPylonDataComponent GetDataComponent(
    size_t index
)

Returns a specific component from the container.

Parameters:

  • index Index of the component to return. The index must be less than the value returned by Pylon::CPylonDataContainer::GetComponentCount().

Return: Returns the component specified by the index parameter.

Error Safety:

Throws an exception if the index parameter is out of range. Can throw exceptions in low-memory conditions.

Thread Safety:

This class is not thread-safe. If you access the same instance from multiple threads, you must make sure to synchronize the access accordingly.

function GetBufferSize#

inline size_t GetBufferSize() const

Get the size of the buffer returned by Buffer().