VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtCommunicationLine.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2021 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/vrvCore.h>
14 #include <vrvCore/DtUniqueID.h>
15 
18 
19 #include <matrix/vlVector.h>
20 
21 namespace makVrv
22 {
23 
24  class DtSceneObjectAgent;
25  class DtAttachableUpdaterAgent;
26  class DtSegmentedLineModelAgent;
27 
32  {
33  public:
34 
36  virtual ~DtCommunicationLine();
37 
39  virtual void setDirection( const AttachablePoint& source, const AttachablePoint& dest );
40 
43 
46  virtual void setColor( float red, float green, float blue, float alpha = 1.0f );
47 
52  virtual void setAnimationRate( float rate );
53 
55  virtual void animate( double t );
56 
58 
60  virtual void setCurvedEarthExaggeration( float amount );
61 
65  virtual void setUseCurvedEarthLines( bool useCurved );
66 
68  virtual void setStartOffset( const DtVector& offset );
69 
71  virtual void setEndOffset( const DtVector& offset );
72 
74  virtual void setStipplePattern( unsigned short stipplePattern );
75 
77  virtual void setStippleRepeatFactor( int repeatFactor );
78 
79  protected:
80 
82 
84  DtCommunicationLine( DtDe& de, int modelSet, int visualType,
85  AttachablePoint source, AttachablePoint dest );
86 
90  virtual void initialize();
91 
96  virtual DtSegmentedLineModelAgent* instantiateLineModelAgent();
97 
103  virtual void initializeLineModelAgent( DtSegmentedLineModelAgent* agent );
104 
108  virtual void slot_coordinateSystemChanged();
109 
110  private:
111 
114 
117 
119  DtCommunicationLine &operator=(const DtCommunicationLine &);
120 
121  protected:
122 
124 
125  DtAttachableUpdaterAgent* myUpdater;
126  DtSegmentedLineModelAgent* myLineModel;
127 
128  DtSceneObjectAgent* mySceneObject;
129 
132 
135 
137 
138  unsigned short myStipplePattern;
140 
142 
145 
150 
152 
153  };
154 
155 
161  {
162  public:
163 
167  static DtCommunicationLineCreator& instance( DtDe& de );
168 
171 
174  DtCommunicationLine* create( int modelSet, int visualizerType,
177 
178  protected:
179 
181 
182  };
183 
184 }
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
Contains the DtBaseRadioVisualization interface.
Common interface for communication lines and squawk indicators.
Definition: DtBaseRadioVisualization.h:23
Encapsulates a communication line between two entities or myFixedFlag points in space.
Definition: DtCommunicationLine.h:31
Defines an attachable point for a squawk indicator or comm line endpoint. May be an entity or a fixed...
Definition: DtBaseRadioVisualization.h:30
float myLineColorA
Definition: DtCommunicationLine.h:149
float myLineColorB
Definition: DtCommunicationLine.h:148
unsigned short myStipplePattern
Definition: DtCommunicationLine.h:138
float myAnimationRate
Definition: DtCommunicationLine.h:141
float myLineColorR
Definition: DtCommunicationLine.h:146
DtDe & myDe
Definition: DtCommunicationLine.h:180
int myModelSet
Definition: DtCommunicationLine.h:130
AttachablePoint myEndPoint
Definition: DtCommunicationLine.h:144
AttachablePoint myStartPoint
Definition: DtCommunicationLine.h:143
DtSignalConnectionManager myConnections
Definition: DtCommunicationLine.h:123
Contains makVrv::DtVirtualBaseClass class.
bool myReverseDirectionFlag
Definition: DtCommunicationLine.h:133
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
DtDe & myDe
Definition: DtCommunicationLine.h:151
float myLineColorG
Definition: DtCommunicationLine.h:147
DtSegmentedLineModelAgent * myLineModel
Definition: DtCommunicationLine.h:126
const char * source
Definition: lz4.h:442
DtAttachableUpdaterAgent * myUpdater
Definition: DtCommunicationLine.h:125
Base class to provide boost signal/slot management.
DtSceneObjectAgent * mySceneObject
Definition: DtCommunicationLine.h:128
Contains makVrv::DtUniqueID type.
int myStippleRepeatFactor
Definition: DtCommunicationLine.h:139
int myVisualType
Definition: DtCommunicationLine.h:131
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
voidpf uLong offset
Definition: ioapi.h:42
bool myCurvedEarthModeFlag
Definition: DtCommunicationLine.h:134
Instantiates communication lines between entities. This creator can be overriden by registering the o...
Definition: DtCommunicationLine.h:160
float myCurvedEarthExaggerationAmount
Definition: DtCommunicationLine.h:136
char * dest
Definition: lz4.h:440
Contains DLL export macros.

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)