VR-Forces 4.5 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vrvVideoStream
DtProcessImageTask.h
Go to the documentation of this file.
1
/******************************************************************************
2
** Copyright (c) 2016 VT-MAK Technologies, Inc.
3
** All rights reserved.
4
******************************************************************************/
5
9
10
#pragma once
11
#include <
vrvVideoStream/vrvVideoStream.h
>
12
13
#include <
vrvVideoStream/DtVideoStream.h
>
14
#include <
vrvVideoStream/DtLocklessQueue.h
>
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
35
class
DT_DLL_VRVVIDEOSTREAM
DtProcessImageTask
36
:
protected
DtRunnable
37
{
38
public
:
40
DtProcessImageTask
(
DtDe
& de,
const
DtVideoStream
&
stream
);
41
43
virtual
~
DtProcessImageTask
();
44
47
virtual
bool
initialize(
48
const
makArchives::DtVideoStreamRecord::ImageTaskRecords
& taskList,
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(
64
const
makArchives::DtVideoStreamRecord::ImageTaskRecords
& taskList );
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
83
DtProcessImageTask
();
84
86
DtProcessImageTask
(
const
DtProcessImageTask
& orig );
87
89
DtProcessImageTask
& operator=(
const
DtProcessImageTask
& rhs );
90
92
virtual
void
run();
93
94
protected
:
95
DtDe
&
myDe
;
96
const
DtVideoStream
&
myStream
;
97
DtImageTaskElement
*
myPipeline
;
98
DtLocklessQueue<DtVideoFrameBuffer*>
myImageQueue
;
99
100
DtThreadStartSP
myStart
;
101
DtThread*
myThread
;
102
103
DtMetadataPublisher
*
myMetadataPublisher
;
104
double
myFrequency
;
105
106
DtLocklessQueue<DtVideoFrameBuffer*>
myVideoFrameBufferPool
;
107
};
108
}
Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (
www.mak.com
)