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
DtMetadataElement.h
Go to the documentation of this file.
1
// /******************************************************************************
2
// ** Copyright (c) 2012 VT-MAK Technologies, Inc.
3
// ** All rights reserved.
4
// ******************************************************************************/
5
9
10
#pragma once
11
#include <
vrvVideoStream/DtKlvKey.h
>
12
13
#include <vector>
14
15
namespace
makVrv
16
{
17
class
DtMetadataPublisher;
18
22
class
DT_DLL_VRVVIDEOSTREAM
DtMetadataElement
23
{
24
public
:
26
DtMetadataElement
();
27
29
virtual
~
DtMetadataElement
();
30
32
virtual
void
setPublisher(
DtMetadataPublisher
* publisher );
33
35
virtual
unsigned
int
encodedLength() = 0;
36
38
virtual
unsigned
char
*
encode
(
unsigned
char
* buffer ) = 0;
39
42
virtual
void
decode
(
unsigned
char
* buffer,
unsigned
int
length ) = 0;
43
45
virtual
bool
timeForUpdate();
46
48
virtual
void
tick(
double
dt);
49
52
virtual
void
setFrequency(
double
timeInSeconds );
53
55
virtual
void
addChild(
DtMetadataElement
* element );
56
58
virtual
DtKlvKey
& key();
59
60
protected
:
63
virtual
void
update() = 0;
64
67
virtual
unsigned
int
encodedLengthChildren();
68
69
protected
:
70
DtMetadataElement
*
myParent
;
71
std::vector<DtMetadataElement*>
myChildren
;
72
DtMetadataPublisher
*
myPublisher
;
73
74
double
myLastUpdate
;
75
double
myNextUpdate
;
76
bool
myIsDirty
;
77
DtKlvKey
myKey
;
78
79
float
myFrequency
;
80
bool
myTimeToUpdate
;
81
};
82
}
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
)