VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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 
15 
16 namespace makVrv
17 {
18  class DtDe;
19  class DtIntersector;
20 
22  {
23  public:
24 
26 
27  virtual ~DtLocalMetadataPublisher();
28 
29  virtual void tick( double dt );
30 
31  // Velocity of object attached to, if attached, in Database (local)
32  // coordinates
33  virtual DtVector attachedVelocity();
34 
35  // Get the wind direction, from 0-360. Used by multiple elements
36  virtual double windDirection();
37 
38  // Get the wind speed (m/s). Used by multiple elements
39  virtual double windSpeed();
40 
42  virtual bool haveValidUpperLeftCorner() const;
46  virtual bool haveValidUpperRightCorner() const;
47  virtual bool haveValidLowerRightCorner() const;
48  virtual bool haveValidLowerLeftCorner() const;
50 
52  virtual DtVector upperLeftCorner() const;
56  virtual DtVector upperRightCorner() const;
58  virtual DtVector lowerRightCorner() const;
60  virtual DtVector lowerLeftCorner() const;
62 
63  // What direction is the camera looking
64  virtual DtVector calcLookAt(double hfov, double vfov );
65 
66  // Get the horizontal and vertical field of view in radians
67  virtual void getFieldsOfView(double& hfov, double& vfov );
68  protected:
69 
70  DtLocalMetadataPublisher( DtDe& de, const DtVideoStream& videoStream );
71 
73 
74  virtual void updateTargetCorners();
75 
76  virtual void updateAttachedVelocity(double dt);
77 
78  virtual DtVector getFrustumVector(int corner);
79 
80  unsigned int calcChecksum(unsigned char* buffer, unsigned int length);
81 
82  void setChecksum(unsigned char* buffer, unsigned int length, unsigned int checksum);
83 
84  protected:
87 
92  DtVector myUpperLeftCorner; // point 1 in standard
93  DtVector myUpperRightCorner; // point 2 in standard
94  DtVector myLowerRightCorner; // point 3 in standard
95  DtVector myLowerLeftCorner; // point 4 in standard
96  };
97 
99  {
100  public:
102 
104 
105  virtual DtMetadataPublisher* create( DtDe& de, const DtVideoStream& videoStream );
106  };
107 }
108 
DtVector myLowerLeftCorner
Definition: DtLocalMetadataPublisher.h:95
A DtVideoStream instance will create a single streaming video pipeline on the channel indicated by wi...
Definition: DtVideoStream.h:35
DtVector myAttachedLastPosition
Definition: DtLocalMetadataPublisher.h:86
#define DT_DLL_VRVLOCALMS
Definition: vrvLocalMS.h:21
Definition: DtLocalMetadataPublisher.h:21
Definition: DtLocalMetadataPublisher.h:98
bool myValidLowerLeftCorner
Definition: DtLocalMetadataPublisher.h:91
Contains the DtMetadataPublisher class declaration.
DtMetadataPublisher defines the interface for all metadata publishers, as well as the implementation ...
Definition: DtMetadataPublisher.h:37
DtVector myLowerRightCorner
Definition: DtLocalMetadataPublisher.h:94
DtVector myUpperLeftCorner
Definition: DtLocalMetadataPublisher.h:92
Contains DLL export macros.
bool myValidLowerRightCorner
Definition: DtLocalMetadataPublisher.h:90
Definition: DtMetadataPublisher.h:178
DtVector myUpperRightCorner
Definition: DtLocalMetadataPublisher.h:93
DtVector myAttachedVelocity
Definition: DtLocalMetadataPublisher.h:85
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:70
bool myValidUpperLeftCorner
Definition: DtLocalMetadataPublisher.h:88
bool myValidUpperRightCorner
Definition: DtLocalMetadataPublisher.h:89
Contains the DtMetadataElement class declaration.

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)