VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtProcessImageTask.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2014 VT-MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
12 
15 
16 #include <osg/Image>
17 
18 // #include <boost/thread.hpp>
19 #include <vlutil/vlRunnable.h>
20 #include <vlutil/vlThread.h>
21 
22 #include <vector>
23 
24 class DtThread;
25 
26 namespace makVrv
27 {
28  class DtMetadataPublisher;
29  class DtImageTaskElement;
30  class DtVideoFrameBuffer;
31 
36  : protected DtRunnable
37  {
38  public:
40  DtProcessImageTask( DtDe& de, const DtVideoStream& stream );
41 
43  virtual ~DtProcessImageTask();
44 
47  virtual bool initialize(
49  const makArchives::DtMetadataPublisherRecord& metadataConfig );
50 
54  virtual void processImage( osg::ref_ptr<osg::Image> img );
55 
57  const DtVideoStream& stream();
58 
59  protected:
60 
63  virtual DtImageTaskElement* buildPipeline(
65 
68  virtual void setElementFromRecord( DtImageTaskElement* element,
69  const makArchives::DtImageTaskRecord& taskRecord );
70 
73  virtual bool configureElement( DtImageTaskElement* element );
74 
78  // -- virtual void workerThread();
79 
80  private:
81 
84 
87 
89  DtProcessImageTask& operator=( const DtProcessImageTask& rhs );
90 
92  virtual void run();
93 
94  protected:
99 
100  DtThreadStartSP myStart;
101  DtThread* myThread;
102 
104  double myFrequency;
105 
106  std::vector<DtVideoFrameBuffer*> myVideoFrameBufferPool;
108  };
109 }

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)