VR-Forces 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
DT_DLL_VRVCORE double length(const makVrv::DtCoordinateSystem &, const std::vector< DtVector > &vertices)
Returns the total distance of a segmented line defined by the provided vector of vertices. Coordinates are in local database coordinates. The coordinate system is used to convert between the local database coordinates and geocentric. All distance is in 2D – the Z value is ignored.
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:72
bool myValidUpperLeftCorner
Definition: DtLocalMetadataPublisher.h:88
bool myValidUpperRightCorner
Definition: DtLocalMetadataPublisher.h:89
Contains the DtMetadataElement class declaration.

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)