本文整理汇总了C++中VideoStream::setFrameHolder方法的典型用法代码示例。如果您正苦于以下问题:C++ VideoStream::setFrameHolder方法的具体用法?C++ VideoStream::setFrameHolder怎么用?C++ VideoStream::setFrameHolder使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类VideoStream
的用法示例。
在下文中一共展示了VideoStream::setFrameHolder方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: createStream
OniStatus Context::createStream(OniDeviceHandle device, OniSensorType sensorType, OniStreamHandle* pStream)
{
// Create the stream.
Device* pDevice = device->pDevice;
VideoStream* pMyStream = pDevice->createStream(sensorType);
if (pMyStream == NULL)
{
m_errorLogger.Append("Context: Couldn't create stream from device:%08x, source: %d", device, sensorType);
return ONI_STATUS_ERROR;
}
pMyStream->setNewFrameCallback(newFrameCallback, this);
// Create stream frame holder and connect it to the stream.
StreamFrameHolder* pFrameHolder = XN_NEW(StreamFrameHolder, m_frameManager, pMyStream);
if (pFrameHolder == NULL)
{
m_errorLogger.Append("Context: Couldn't create stream frame holder from device:%08x, source: %d", device, sensorType);
XN_DELETE(pMyStream);
return ONI_STATUS_ERROR;
}
pMyStream->setFrameHolder(pFrameHolder);
// Create handle object.
_OniStream* pStreamHandle = XN_NEW(_OniStream);
if (pStreamHandle == NULL)
{
m_errorLogger.Append("Couldn't allocate memory for StreamHandle");
XN_DELETE(pFrameHolder);
pFrameHolder = NULL;
XN_DELETE(pMyStream);
pMyStream = NULL;
return ONI_STATUS_ERROR;
}
*pStream = pStreamHandle;
pStreamHandle->pStream = pMyStream;
m_cs.Lock();
m_streams.AddLast(pMyStream);
m_cs.Unlock();
return ONI_STATUS_OK;
}