![]() |
VR-Forces Developer's Guide
|
DtProcessImageTask creates and manages all the process image pipeline elements.

Public Member Functions | |
| DtProcessImageTask (DtDe &de, const DtVideoStream &stream) | |
| virtual | ~DtProcessImageTask () |
| virtual bool | initialize (const makArchives::DtVideoStreamRecord::ImageTaskRecords &taskList, const makArchives::DtMetadataPublisherRecord &metadataConfig) |
| virtual void | process (const DtReadFramebufferProcessData &data, bool tickPublisher) |
| virtual void | tickMetaDataPublisher (void) |
| const DtVideoStream & | stream () |
Protected Member Functions | |
| virtual DtImageTaskElement * | buildPipeline (const makArchives::DtVideoStreamRecord::ImageTaskRecords &taskList) |
| virtual void | setElementFromRecord (DtImageTaskElement *element, const makArchives::DtImageTaskRecord &taskRecord) |
| virtual bool | configureElement (DtImageTaskElement *element) |
Protected Attributes | |
| DtDe & | myDe |
| const DtVideoStream & | myStream |
| DtImageTaskElement * | myPipeline |
| DtLocklessQueue < DtVideoFrameBuffer * > | myImageQueue |
| DtThreadStartSP | myStart |
| DtThread * | myThread |
| DtMetadataPublisher * | myMetadataPublisher |
| double | myFrequency |
| DtLocklessQueue < DtVideoFrameBuffer * > | myVideoFrameBufferPool |
| DtTime | myLastUpdateTime |
Private Member Functions | |
| DtProcessImageTask () | |
| DtProcessImageTask (const DtProcessImageTask &orig) | |
| DtProcessImageTask & | operator= (const DtProcessImageTask &rhs) |
| virtual void | run () |
| makVrv::DtProcessImageTask::DtProcessImageTask | ( | DtDe & | de, |
| const DtVideoStream & | stream | ||
| ) |
CTOR.
|
virtual |
DTOR.
|
private |
This method is executed in a loop by the worker thread created when the image task is initialized. It runs all the process image task elements.
Default CTOR (unimplemented)
|
private |
Copy CTOR (unimplemented)
|
virtual |
Provide the image task with all the configuration data necessary to create the image task element pipeline and metadata publisher.
|
virtual |
Ticks the metadata publisher, if tickPublisher is true -tickPublisher is false when HW encoding, because the process is called asynchronously from another thread (when the encoded frame is ready). Therefore, the client needs to call DtProcessImageTask::tickMetaDataPublisher on its own beforehand, in this case -tickPublisher is true otherwise. Then, it pushes the captured image onto the image processing queue (where it can be modified/operated on by the image task elements)
|
virtual |
explicitly tick. Used when async hw encoding done in another thread Needs to be done before frame is submitted to the encoder
| const DtVideoStream& makVrv::DtProcessImageTask::stream | ( | ) |
Get the video stream process image task is supporting.
|
protectedvirtual |
Create all the process image task elements specified in the ImageTaskRecords record.
|
protectedvirtual |
Initialize a process image task element from the DtImageTaskRecord which caused its creation in buildPipeline.
|
protectedvirtual |
Configure a process image task element based on its current initialization state.
|
private |
Assignment operator (unimplemented)
|
privatevirtual |
Function that will be called when the worker thread is started.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |