VR-Forces Development_Version 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
vrvLocalMS
DtLocalMetadataPublisher.h
Go to the documentation of this file.
1
/******************************************************************************
2
** Copyright (c) 2012 VT-MAK Technologies, Inc.
3
** All rights reserved.
4
******************************************************************************/
5
9
#pragma once
10
11
#include <
vrvLocalMS/vrvLocalMS.h
>
12
13
#include <
vrvVideoStream/DtMetadataPublisher.h
>
14
#include <
vrvVideoStream/DtMetadataElement.h
>
15
16
namespace
makVrv
17
{
18
class
DtDe;
19
20
class
DT_DLL_VRVLOCALMS
DtLocalMetadataPublisher
:
public
DtMetadataPublisher
21
{
22
public
:
23
24
friend
class
DtLocalMetadataPublisherCreator
;
25
26
virtual
~
DtLocalMetadataPublisher
();
27
28
virtual
void
tick(
double
dt );
29
30
// Velocity of object attached to, if attached, in Database (local)
31
// coordinates
32
virtual
DtVector
attachedVelocity();
33
34
// Get the wind direction, from 0-360. Used by multiple elements
35
virtual
double
windDirection();
36
37
// Get the wind speed (m/s). Used by multiple elements
38
virtual
double
windSpeed();
39
41
42
43
44
virtual
bool
haveValidUpperLeftCorner()
const
;
45
virtual
bool
haveValidUpperRightCorner()
const
;
46
virtual
bool
haveValidLowerRightCorner()
const
;
47
virtual
bool
haveValidLowerLeftCorner()
const
;
49
51
52
53
virtual
DtVector
upperLeftCorner()
const
;
55
virtual
DtVector
upperRightCorner()
const
;
57
virtual
DtVector
lowerRightCorner()
const
;
59
virtual
DtVector
lowerLeftCorner()
const
;
61
62
// What direction is the camera looking
63
virtual
DtVector
calcLookAt(
double
hfov,
double
vfov );
64
65
// Get the horizontal and vertical field of view in radians
66
virtual
void
getFieldsOfView(
double
& hfov,
double
& vfov );
67
protected
:
68
69
DtLocalMetadataPublisher
(
DtDe
& de,
const
DtVideoStream
& videoStream );
70
71
DtLocalMetadataPublisher
();
72
73
virtual
void
updateTargetCorners();
74
75
virtual
void
updateAttachedVelocity(
double
dt);
76
77
virtual
DtVector
getFrustumVector(
int
corner);
78
79
unsigned
int
calcChecksum(
unsigned
char
* buffer,
unsigned
int
length);
80
81
void
setChecksum(
unsigned
char
* buffer,
unsigned
int
length,
unsigned
int
checksum);
82
83
protected
:
84
DtVector
myAttachedVelocity
;
85
DtVector
myAttachedLastPosition
;
86
87
bool
myValidUpperLeftCorner
;
88
bool
myValidUpperRightCorner
;
89
bool
myValidLowerRightCorner
;
90
bool
myValidLowerLeftCorner
;
91
DtVector
myUpperLeftCorner
;
// point 1 in standard
92
DtVector
myUpperRightCorner
;
// point 2 in standard
93
DtVector
myLowerRightCorner
;
// point 3 in standard
94
DtVector
myLowerLeftCorner
;
// point 4 in standard
95
};
96
97
class
DT_DLL_VRVLOCALMS
DtLocalMetadataPublisherCreator
:
public
DtMetadataPublisherCreator
98
{
99
public
:
100
DtLocalMetadataPublisherCreator
();
101
102
virtual
~
DtLocalMetadataPublisherCreator
();
103
104
virtual
DtMetadataPublisher
* create(
DtDe
& de,
const
DtVideoStream
& videoStream );
105
};
106
}
107
Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (
www.mak.com
)