VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtProcessImageTask.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2018 VT-MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
15 
16 #include <osg/Image>
17 
18 #include <vlutil/vlRunnable.h>
19 #include <vlutil/vlThread.h>
20 
21 #include <vector>
22 
23 class DtThread;
24 
25 namespace makVrv
26 {
27  class DtMetadataPublisher;
28  class DtImageTaskElement;
29  class DtVideoFrameBuffer;
30 
31 
32 
37  : protected DtRunnable
38  {
39  public:
42 
44  virtual ~DtProcessImageTask();
45 
48  virtual bool initialize(
50  const makArchives::DtMetadataPublisherRecord& metadataConfig );
51 
55  virtual void process(const DtReadFramebufferProcessData& data);
56 
58  const DtVideoStream& stream();
59 
60  protected:
61 
64  virtual DtImageTaskElement* buildPipeline(
66 
69  virtual void setElementFromRecord( DtImageTaskElement* element,
70  const makArchives::DtImageTaskRecord& taskRecord );
71 
74  virtual bool configureElement( DtImageTaskElement* element );
75 
79  // -- virtual void workerThread();
80 
81  private:
82 
85 
88 
90  DtProcessImageTask& operator=( const DtProcessImageTask& rhs );
91 
93  virtual void run();
94 
95  protected:
100 
101  DtThreadStartSP myStart;
102  DtThread* myThread;
103 
105  double myFrequency;
106 
108  };
109 }
A DtVideoStream instance will create a single streaming video pipeline on the channel indicated by wi...
Definition: DtVideoStream.h:33
Contains the DtVideoStream class declaration.
double myFrequency
Definition: DtProcessImageTask.h:105
This is a non-extendable container class used to send the information to the NVidia encoder...
Definition: DtReadFramebufferProcessData.h:20
DtLocklessQueue< DtVideoFrameBuffer * > myImageQueue
Definition: DtProcessImageTask.h:99
Record for a sensor definition.
Definition: DtImageTaskRecord.h:20
DtMetadataPublisher defines the interface for all metadata publishers, as well as the implementation ...
Definition: DtMetadataPublisher.h:36
#define DT_DLL_VRVVIDEOSTREAM
Definition: vrvVideoStream.h:20
DtLocklessQueue is a thread safe queue for single reader/single writer.
Definition: DtLocklessQueue.h:21
Record for a metadata publisher Defines both the type and parameters.
Definition: DtMetadataPublisherRecord.h:21
DtLocklessQueue< DtVideoFrameBuffer * > myVideoFrameBufferPool
Definition: DtProcessImageTask.h:107
The DtImageTaskElement is an abstract base class for all image task elements.
Definition: DtImageTaskElement.h:25
DtDe & myDe
Definition: DtProcessImageTask.h:96
DtMetadataPublisher * myMetadataPublisher
Definition: DtProcessImageTask.h:104
Contains the DtReadFramebufferProcessData class declaration.
voidpf stream
Definition: ioapi.h:39
DtThreadStartSP myStart
Definition: DtProcessImageTask.h:101
const DtVideoStream & myStream
Definition: DtProcessImageTask.h:97
DtProcessImageTask creates and manages all the process image pipeline elements.
Definition: DtProcessImageTask.h:36
DtImageTaskElement * myPipeline
Definition: DtProcessImageTask.h:98
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
Contains DLL export macros.
DtThread * myThread
Definition: DtProcessImageTask.h:102
std::vector< DtImageTaskRecord > ImageTaskRecords
List of image task records.
Definition: DtVideoStreamRecord.h:114

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)