xn::OutputMetaData Class Reference
C++ Reference to Application Programmer Interface (API) » Meta-Data Objects (Frame Objects)

`#include <XnCppWrapper.h>`

Inheritance diagram for xn::OutputMetaData:
[legend]

## Public Member Functions

| OutputMetaData (const XnUInt8 **ppData)
virtual | ~OutputMetaData ()
XnUInt64 | Timestamp () const
XnUInt64 & | Timestamp ()
XnUInt32 | FrameID () const
XnUInt32 & | FrameID ()
XnUInt32 | DataSize () const
XnUInt32 & | DataSize ()
XnBool | IsDataNew () const
XnBool & | IsDataNew ()
const XnOutputMetaData * | GetUnderlying () const
XnOutputMetaData * | GetUnderlying ()
const XnUInt8 * | Data () const
const XnUInt8 *& | Data ()
XnUInt8 * | WritableData ()
XnStatus | AllocateData (XnUInt32 nBytes)
void | Free ()
XnStatus | MakeDataWritable ()

## Protected Attributes

XnUInt8 * | m_pAllocatedData

## Detailed Description

Purpose: The OutputMetaData class provides functionality for supporting fast cached data access to many types of generator nodes.

Remarks:

The OutputMetaData class is the most basic OpenNI metadata class, whose main properties include `Timestamp`, `FrameID`, and `DataSize`. This class is never instantiated; it is used a base class to help build the hierarchy.

An instance of this class hold a frame object. The frame object is a snapshot of the generated data at a certain point in time.

## Constructor & Destructor Documentation

## OutputMetaData()

xn::OutputMetaData::OutputMetaData | ( | const XnUInt8 ** | ppData | ) |

inline

Ctor. Intended for use by other MetaData objects.

Parameters

  [in] | ppData | A pointer to the data member of the meta data object.

## ~OutputMetaData()

virtual xn::OutputMetaData::~OutputMetaData | ( |  | ) |

inline virtual

Dtor. Frees any allocated data.

## Member Function Documentation

## AllocateData()

XnStatus xn::OutputMetaData::AllocateData | ( | XnUInt32 | nBytes | ) |

inline

Allocates a writable buffer. If a previous buffer was allocated it will be freed (or reused if possible).

Also see Frame Objects and Metadata Objects.

Parameters

  [in] | nBytes | The requested size for the buffer, in bytes.

## Data() [1/2]

const XnUInt8 *& xn::OutputMetaData::Data | ( |  | ) |

inline

Gets a pointer to the data of the frame object saved in this object.

## Data() [2/2]

const XnUInt8 * xn::OutputMetaData::Data | ( |  | ) | const

inline

Gets a pointer to the data of the frame object saved in this object.

## DataSize() [1/2]

XnUInt32 & xn::OutputMetaData::DataSize | ( |  | ) |

inline

Returns the size, in bytes, of the data of the frame object saved in this object.

Remarks

For map metadata, this value equals to XRes() * YRes() * BytesPerPixel().

## DataSize() [2/2]

XnUInt32 xn::OutputMetaData::DataSize | ( |  | ) | const

inline

Returns the size, in bytes, of the data of the frame object saved in this object.

Remarks

For map metadata, this value equals to XRes() * YRes() * BytesPerPixel().

## FrameID() [1/2]

XnUInt32 & xn::OutputMetaData::FrameID | ( |  | ) |

inline

Returns the frame ID of the frame object saved in this object. Frame IDs are sequential unique numbers starting with 1.

## FrameID() [2/2]

XnUInt32 xn::OutputMetaData::FrameID | ( |  | ) | const

inline

Returns the frame ID of the frame object saved in this object. Frame IDs are sequential unique numbers starting with 1.

## Free()

void xn::OutputMetaData::Free | ( |  | ) |

inline

Frees the writable buffer, if one was allocated.

## GetUnderlying() [1/2]

XnOutputMetaData * xn::OutputMetaData::GetUnderlying | ( |  | ) |

inline

Gets the C object that is wrapped by this object.

## GetUnderlying() [2/2]

const XnOutputMetaData * xn::OutputMetaData::GetUnderlying | ( |  | ) | const

inline

Gets the C object that is wrapped by this object.

## IsDataNew() [1/2]

XnBool & xn::OutputMetaData::IsDataNew | ( |  | ) |

inline

Returns whether this node's frame data was updated by the most recent call to any 'WaitXUpdateAll()' function, e.g., xn::Context::WaitAnyUpdateAll().

## IsDataNew() [2/2]

XnBool xn::OutputMetaData::IsDataNew | ( |  | ) | const

inline

Returns whether this node's frame data was updated by the most recent call to any 'WaitXUpdateAll()' function, e.g., xn::Context::WaitAnyUpdateAll().

## MakeDataWritable()

XnStatus xn::OutputMetaData::MakeDataWritable | ( |  | ) |

inline

Creates a writable copy of the data, and stores it instead of the original (read-only) data. Also see Frame Objects and Metadata Objects.

## Timestamp() [1/2]

XnUInt64 & xn::OutputMetaData::Timestamp | ( |  | ) |

inline

Returns the timestamp of the frame object saved in this object.

## Timestamp() [2/2]

XnUInt64 xn::OutputMetaData::Timestamp | ( |  | ) | const

inline

Returns the timestamp of the frame object saved in this object.

## WritableData()

XnUInt8 * xn::OutputMetaData::WritableData | ( |  | ) |

inline

Gets a pointer to the writable buffer (see Frame Objects and Metadata Objects).

## Member Data Documentation

## m_pAllocatedData

XnUInt8* xn::OutputMetaData::m_pAllocatedData

protected

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

- XnCppWrapper.h