VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtObserver.h
Go to the documentation of this file.
1 /******************************************************************************
2  * Copyright (c) 2025 MAK Technologies, Inc.
3  * All rights reserved.
4  ******************************************************************************/
5 
9 
10 #pragma once
11 
13 #include <vrvCore/DtElementData.h>
15 #include <vrvCore/DtObserverMode.h>
17 #include <matrix/vlVector.h>
18 
20 
21 
22 class DtTaitBryan;
23 
24 namespace makVrv
25 {
26  class DtObserverObjectAgent;
27  class DtDe;
28  class DtAgentManagerInterface;
29  class DtObserverConfiguration;
30  class DtSensor;
31  class DtOceanLayer;
32  class DtQuat;
33  class DtCameraShake;
34  class DtChannelConfiguration;
35 
39  {
40  public:
41 
42  typedef std::vector<DtElementID> ElementList;
43 
45  DtObserver(DtDe& de, DtAgentManagerInterface& sceneInterface,
46  const DtObserverConfiguration& config );
47 
49  virtual ~DtObserver();
50 
52  inline DtDe& de()
53  {
54  return myDe;
55  }
56 
58  DtObserverObjectAgent& agent();
59 
61  const DtObserverObjectAgent& agent() const;
62 
63  //@name Saved View loading / setting functions.
65 
67  bool getRecord(makArchives::DtObserverStateRecord& recOut) const;
68 
70  void setFromRecord(const makArchives::DtObserverStateRecord& rec);
71 
73  bool getRecord(makArchives::DtObserverSettingsRecord& recOut) const;
74 
76  void setFromRecord(const makArchives::DtObserverSettingsRecord& rec);
77 
82  makArchives::DtObserverStateRecord getCachedObserverStateRecord() const;
83 
86  bool hasInitialLocation() const;
87 
89  bool projectionIs2D() const;
98  void setProjectionIs2D( bool is2d );
100 
102 
104  const std::string& name() const;
105  void setName( const std::string& name );
106 
116 
117  int observerMode() const;
118  bool setObserverMode( int observerMode );
120 
122  double viewResolution() const;
123 
125  void setViewResolution(double resolution);
126 
128  void setViewResolutionFromHeightAboveTerrain(double hat);
129 
131  double viewMagnification() const;
132 
134  void setViewMagnification(double magnficationFactor);
135 
137  void setEntityLodScale(double entityLodScale);
138 
140  double entityLodScale() const;
141 
143  void setTerrainLodScale(double terrainLodScale);
144 
146  double terrainLodScale() const;
147 
149  void setPaperMapLayer(const std::string& paperMapLayer);
150 
152  std::string paperMapLayer() const;
153 
154  DtObserverConfiguration& configuration();
155  const DtObserverConfiguration& configuration() const;
156 
158  bool inUse( const std::string& channelKeyToIgnore = "" ) const;
159 
160  //@name Attachment functions.
162 
164  void attachToNextElement();
165 
167  void attachToPreviousElement();
168 
170  bool isAttached(DtElementID) const;
171 
173  bool isPrimaryAttached(DtElementID) const;
174 
176  bool isSecondaryAttached(DtElementID) const;
177 
179  void setPrimaryAttachment(const ElementList& elements);
183  void setPrimaryAttachment(DtElementID element);
185 
187  void setSecondaryAttachment(const ElementList& element);
192  void setSecondaryAttachment(DtElementID element);
194 
197  void setLocationTrackAttachment( double x, double y, double z );
198 
201  void getLocationTrackAttachment( double& x, double& y, double& z ) const;
202 
206  void setPartAttachment(int partId);
207 
209  int partAttachment() const;
210 
212  void detach();
213 
215  bool attached() const;
216 
218  bool tracking() const;
219 
221  const ElementList& primaryAttachments() const;
222 
224  const ElementList& secondaryAttachments() const;
225 
226  void setHideModelOnAttach( bool hide );
227  bool hideModelOnAttach() const;
228 
232 
233  void setAttachmentHas3DCockpit( bool cockpit);
234  bool attachmentHas3DCockpit() const;
236 
237  void setAttachType( DtObserverObject::AttachType type );
238  DtObserverObject::AttachType attachType() const;
239 
240  void setOrientToTargetConstraint( bool orient );
241  bool orientToTargetConstraint() const;
242 
245  DtElementID lastSingleAttached() const;
246 
248  bool haveLastSingleAttached() const;
249 
251 
252  //@name Movement functions
254 
257  void reset();
258 
261  void setAllowReset(bool b);
262 
264  bool allowReset() const;
265 
267  void setAllowAttach(bool b);
268 
270  bool allowAttach() const;
271 
273  void setAllowDetach(bool b);
274 
276  bool allowDetach() const;
277 
279  void centerOnTerrain();
280 
282  void centerOnTerrain( const DtUniqueID& terrainPatch );
283 
286  void suppressConstrainToTerrain( bool trueFalse );
287 
289  void setConstrainToCenter( bool trueFalse );
290  void toggleConstrainToCenter();
291  bool constrainToCenter() const;
292 
294  void getLocation( double &x, double &y, double& z ) const;
295 
297  DtVector location() const;
298 
300  DtVector observerCameraPosition() const;
301 
303  void setLocation( double x, double y, double z );
304 
306  void getOrientation( double& psi, double& theta, double& phi ) const;
307 
309  void getTopographicOrientation( double& psi, double& theta, double& phi ) const;
310 
312  void setOrientation( double psi, double theta, double phi );
313 
315  void setTopographicOrientation( double psi, double theta, double phi );
316 
318  void getOrientation( double& x, double& y, double& z, double& w ) const;
319 
321  void setOrientation( double x, double y, double z, double w );
322 
325  DtTaitBryan observerCameraOrientation(bool includeShake=true) const;
326 
329  virtual DtVector observerPlatformFront() const;
330 
333  virtual DtVector observerPlatformUp() const;
334 
337  virtual DtVector observerPlatformRight() const;
338 
342  virtual DtVector observerCameraFront(bool includeShake=true) const;
343 
345  virtual DtVector observerCameraUp(bool includeShake = true) const;
346 
348  virtual DtVector observerCameraRight(bool includeShake = true) const;
349 
352  void moveUnit(const DtVector& direction);
353 
356  void rotateUnit(const DtTaitBryan& rotation);
357 
359  void getLinearVelocity(double &x, double &y, double &z) const;
361  DtVector linearVelocity() const;
363 
365  void getRotationalVelocity( double& x, double& y, double& z ) const;
367  DtVector rotationalVelocity() const;
369 
371  bool observerObjectMoving() const;
372 
374  double observerAltitude() const;
376 
377  //@name Attached Movement functions
379 
385  void setAttachedLocation( double x, double y, double z );
386  void setAttachedX( double x );
387  void setAttachedY( double y );
388  void setAttachedZ( double z );
389 
392  void setAttachedOrientation( double psi, double theta, double phi );
393  void setAttachedYaw(double psi);
394  void setAttachedPitch(double theta);
395  void setAttachedRoll(double phi);
396 
399  void setLocalModelScalingEnabled( bool enabled );
400 
403  void setLocalModelScalingAmount( float amount );
404 
406 
407  //@name Speed functions
409 
411  void setOrbitSpeedGain( int gain, bool forwardToObserverModeManager = true );
412 
414  int orbitSpeedGain() const;
415 
417  int orbitSpeedGainFromSpeed( double speed ) const;
418 
419  void setRotationSpeedGain( int gain, bool forwardToObserverModeManager = true );
420  int rotationSpeedGain() const;
421 
423  void setLinearSpeedGain( int gain );
424  int linearSpeedGain() const;
425 
426  void setLinearScaledSpeedGain( int gain, bool forwardToObserverModeManager = true );
427  int linearScaledSpeedGain() const;
428 
429  void setLinearUnscaledSpeedGain( int gain, bool forwardToObserverModeManager = true );
430  int linearUnscaledSpeedGain() const;
431 
432  void setGainPrecision( int amt, bool forwardToObserverModeManager = true );
433  int gainPrecision() const;
434 
435  void setModelScaleFactor( double modelScaleFactor, bool forwardToObserverModeManager = true );
436  double modelScaleFactor() const;
437 
438  void setModelScaleType( const std::string& modelScaleType, bool forwardToObserverModeManager = true );
439  const std::string& modelScaleType() const;
440 
441  void setMaxModelScaleFactor(double maxModelScaleFactor, bool forwardToObserverModeManager = true);
442  double maxModelScaleFactor() const;
443 
444  void setSpeedScalingMode( DtObserverObject::SpeedScalingMode mode,
445  bool forwardToObserverModeManager = true );
446  DtObserverObject::SpeedScalingMode speedScalingMode() const;
447 
451  void setIsFrustumBasedViewMagnificationEnabled(bool enabled, bool forwardToObserverModeManager = true);
452  bool isFrustumBasedViewMagnificationEnabled() const;
453 
455  void setNorthType(DtObserverObject::NorthType northType, bool forwardToObserverModeManager = true);
456 
458  DtObserverObject::NorthType northType() const;
459 
463  virtual void setColorControlEnabled(bool enabled, bool forwardToObserverModeManager = true);
464 
466  virtual bool colorControlEnabled() const;
467 
471  virtual void setColorControlInvert(bool enabled, bool forwardToObserverModeManager = true);
472 
474  virtual bool colorControlInvert() const;
475 
479  virtual void setColorControlContrast(double value, bool forwardToObserverModeManager = true);
480 
482  virtual double colorControlContrast() const;
483 
487  virtual void setColorControlBrightness(double value, bool forwardToObserverModeManager = true);
488 
490  virtual double colorControlBrightness() const;
491 
495  virtual void setColorControlColorMix(double value, bool forwardToObserverModeManager = true);
496 
498  virtual double colorControlColorMix() const;
499 
500  void setSpeedScalingMslModeOffset(double offset,
501  bool forwardToObserverModeManager = true );
502  double speedScalingMslModeOffset() const;
503 
504  void setOrbitSpeed( double speed );
505  double orbitSpeed() const;
506 
507  void setRotationSpeed( double speed );
508  double rotationSpeed() const;
509 
510  void setLinearSpeed( double speed );
511  double linearSpeed() const;
512 
514 
516  virtual void toggleFlashlight();
517 
519  virtual DtCameraShake* cameraShake();
520 
522  virtual bool setCameraShake(const std::string& shakeType);
523 
525  virtual void setLodCenterSettings(
526  const DtObserverObject::DtLodCenterSettings& settings, bool forwardToObserverModeManager = true);
527  virtual bool lodCenterSettings(DtObserverObject::DtLodCenterSettings& settings) const;
528 
531  virtual void setCameraShakeRotation(const DtQuat& rotQuat) const;
532 
533  //@name Sensor functions
535  virtual void setSensor(const std::string& sensorName);
537 
539  virtual std::string findSensor();
540 
542  virtual void disableSensor();
543 
545  virtual void slot_sensorRemoved(DtSensor* sensor);
547 
548  // Called by the input driver before any mouse or keyboard input is processed for the
549  // frame, to sync local and remote observers.
550  virtual void synchronize();
551 
553  boost::signalslib::signal<void(const std::string&, DtUniqueID)> signal_objectAttached;
554 
556  boost::signalslib::signal<void(const std::string&)> signal_objectsDetached;
557 
559  boost::signalslib::signal<void(DtObserver*, int)> signal_observerModeChanged;
560 
562  boost::signalslib::signal<void(DtObserver*, int)> signal_linearScaledSpeedGainChanged;
563 
565  boost::signalslib::signal<void(DtObserver*, int)> signal_linearUnscaledSpeedGainChanged;
566 
568  boost::signalslib::signal<void(DtObserver*, int)> signal_rotationSpeedGainChanged;
569 
571  boost::signalslib::signal<void(DtObserver*, int)> signal_orbitSpeedGainChanged;
572 
574  boost::signalslib::signal<void(DtObserver*, int)> signal_gainPrecisionChanged;
575 
577  boost::signalslib::signal<void(DtObserver*, double)> signal_modelScaleFactorChanged;
578 
580  boost::signalslib::signal<void(DtObserver*, std::string)> signal_modelScaleTypeChanged;
581 
583  boost::signalslib::signal<void(DtObserver*, double)> signal_viewMagnificationChanged;
584 
586  boost::signalslib::signal<void(DtObserver*, double)> signal_terrainLodScaleChanged;
587 
589  boost::signalslib::signal<void(DtObserver*, double)> signal_entityLodScaleChanged;
590 
592  boost::signalslib::signal<void(DtObserver*, DtObserverObject::DtLodCenterSettings)> signal_lodCenterSettingsChanged;
593 
595  boost::signalslib::signal<void(DtObserver*, std::string)> signal_paperMapLayerChanged;
596 
598  boost::signalslib::signal<void (DtObserver*,
601 
604  boost::signalslib::signal<void (DtObserver*, double offset)>
606 
608  boost::signalslib::signal<void(DtObserver*, bool)> signal_isFrustumBasedViewMagnificationEnabledChanged;
609 
611  boost::signalslib::signal<void(DtObserver*, DtObserverObject::NorthType northType)>
613 
617  boost::signalslib::signal<void (DtSensor*)> signal_sensorChanged;
618 
621  boost::signalslib::signal<void ()> signal_terrainChanged;
622 
624  void getObserverOffsetVector( double& x, double& y, double& z ) const;
625  void getObserverRotationOffset( double& x, double& y, double& z, double& w ) const;
626 
629 
630  void getCameraFromParentOffsetVector( double& x, double& y, double& z ) const;
631  void getCameraFromParentRotationOffset( double& x, double& y, double& z, double& w ) const;
633 
634 
637  virtual void setUsesBoundingVolumeForAttachedOffsets(bool useBoundingVolume);
638 
641  virtual bool usesBoundingVolumeForAttachedOffsets() const;
642 
643  protected:
644 
646  void slot_terrainCleared();
647  void slot_oceanLayerAdded(const DtOceanLayer&);
648  void slot_oceanLayerDeleted(const std::string&);
649 
650  void updateGlobalTerrainFlag(bool flag);
651 
652  double calcLinearSpeed() const;
653  double calcRotationSpeed() const;
654  double calcOrbitSpeed() const;
655 
656  void setObserverOffsetVector( double x, double y, double z );
657 
658  void setObserverRotationOffset( double x, double y, double z, double w );
659 
660  void getDisplayNamesFromUniqueIds(const std::vector<DtUniqueID>& idsIn,
661  std::set<std::string>& displayNamesOut) const;
662  bool getUniqueIdsFromDisplayNames(const std::set<std::string>& displayNamesIn,
663  std::vector<DtUniqueID>& idsOut) const;
664 
665  makArchives::DtObserverSettingsRecord::AttachType convertObserverAttachType(
666  DtObserverObject::AttachType type) const;
667  DtObserverObject::AttachType convertObserverSettingsAttachType(
669 
670  void connectToElementDataSignals();
671  void disconnectFromElementDataSignals();
672 
673  void setModeSpecificObserverObjectData();
674 
676  virtual void slot_onElementsAdded( const DtElementData::ElementList& elements );
677 
685 
686  virtual void attachToObjects(const ElementList& objects);
689 
692  virtual void slot_attachNextTick(const ElementList objects);
693 
695  virtual bool sceneObjectsAvailable(const ElementList& elements);
697 
699  virtual void slot_onElementAttributesChanged(
701 
704  void slot_completeAttachment();
705 
706  void slot_observerModeModelSetChanged( int observerMode );
707  void slot_observerModeSensorChanged( int observerMode );
708  void slot_observerModeIs2DChanged( int observerMode );
709  void slot_observerModeKeyMapChanged( int observerMode );
710  void slot_observerModeGainPrecisionChanged( int observerMode );
711  void slot_observerModeOrbitSpeedGainChanged( int observerMode );
712  void slot_observerModeRotationSpeedGainChanged( int observerMode );
713  void slot_observerModeLinearScaledSpeedGainChanged( int observerMode );
714  void slot_observerModeLinearUnscaledSpeedGainChanged( int observerMode );
715  void slot_observerModeModelScaleFactorChanged( int observerMode );
716  void slot_observerModeModelScaleTypeChanged( int observerMode );
717  void slot_observerModeSpeedScalingModeChanged( int observerMode );
718  void slot_observerModeSpeedScalingMslModeOffsetChanged( int observerMode );
719  void slot_observerModeIsFrustumBasedViewMagnificationEnabledChanged(int observerMode);
720  void slot_observerModeLodCenterSettingsChanged(int observerMode);
721  void slot_observerModeNorthTypeChanged(int observerMode);
722  void slot_observerModeColorControlEnabledChanged(int observerMode);
723  void slot_observerModeColorControlInvertChanged(int observerMode);
724  void slot_observerModeColorControlContrastChanged(int observerMode);
725  void slot_observerModeColorControlBrightnessChanged(int observerMode);
726  void slot_observerModeColorControlColorMixChanged(int observerMode);
727  void slot_observerModeSettingChanged(int observerMode, int settingKey);
728  void slot_observerModeAdded( int observerMode );
729 
730  // Called when the DE raises the channel configuration modified signal. If a channel
731  // config has it's lod scale modified, the observer will modify all the other channels that
732  // it controls to keep them in sync.
733  void slot_channelModified(const DtChannelConfiguration& config);
734 
736  void attachTo( bool afterTrue );
737 
738  protected:
739 
740  static const double theMoveStepSize;
741 
744  DtObserverObjectAgent* myObserverObjectAgent;
754  std::vector<DtUniqueID> myCurrentAttachments;
755  std::vector<DtUniqueID> mySecondaryAttachments;
757  unsigned int myPartId;
772  std::string myPaperMapLayer;
773 
775 
788  };
789 }
DtObserverObjectAgent * myObserverObjectAgent
Definition: DtObserver.h:744
float myDelayedAttachedPitchValue
Definition: DtObserver.h:786
bool myAllowDetach
Definition: DtObserver.h:763
int myObserverMode
Definition: DtObserver.h:750
AttachType
Definition: DtObserverSettingsRecord.h:24
std::vector< DtUniqueID > mySecondaryAttachments
Definition: DtObserver.h:755
makArchives::DtObserverStateRecord myCachedObserverStateRecord
This is used as a work-around to cache attachments for entities which have not yet been created...
Definition: DtObserver.h:749
DtUniqueID myLastSingleAttached
Definition: DtObserver.h:756
TODO: This class is used to encapsulate a set of default observer settings and parameters.
Definition: DtObserverConfiguration.h:22
bool myConstrainToCenter
Definition: DtObserver.h:759
bool myFlashlightEnabled
Definition: DtObserver.h:765
std::vector< DtElementID > ElementList
Definition: DtObserver.h:42
boost::signalslib::signal< void(DtObserver *, int)> signal_linearScaledSpeedGainChanged
Boost signal called when the scaled linear speed gain is changed.
Definition: DtObserver.h:562
boost::signalslib::signal< void(DtObserver *, int)> signal_linearUnscaledSpeedGainChanged
Boost signal called when the unscaled linear speed gain is changed.
Definition: DtObserver.h:565
boost::signalslib::signal< void(DtObserver *, DtObserverObject::NorthType northType)> signal_northTypeChanged
Signal emitted when an observer&#39;s north type changed.
Definition: DtObserver.h:612
Contains makVrv::DtElementData class.
boost::signalslib::signal< void(const std::string &)> signal_objectsDetached
Boost signal called when observer detaches from all.
Definition: DtObserver.h:556
A DtObserverSettingsRecord contains the state of an observer.
Definition: DtObserverStateRecord.h:20
boost::signalslib::signal< void(DtObserver *, double)> signal_terrainLodScaleChanged
Boost signal called when the observer&#39;s LOD Distance Scale used for terrain visuals is changed...
Definition: DtObserver.h:586
DtObserverObject::AttachType myAttachType
Definition: DtObserver.h:753
boost::signalslib::signal< void(DtObserver *, double offset)> signal_speedScalingMslModeOffsetChanged
Signal emitted when an observer&#39;s speed scaling MSL mode offset changes.
Definition: DtObserver.h:605
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:23
bool myAttachedZDelayedFlag
Definition: DtObserver.h:778
DtSensor * mySensor
Definition: DtObserver.h:769
bool myAllowAttach
Definition: DtObserver.h:762
Definition: DtObserverObject.h:71
boost::signalslib::signal< void(DtSensor *)> signal_sensorChanged
Called when the observer changes which sensor it&#39;s using.
Definition: DtObserver.h:617
static const double theMoveStepSize
Definition: DtObserver.h:740
Contains vrvCore::DtObserverMode class.
SpeedScalingMode
Definition: DtObserverObject.h:56
A facade for a DtObserverObject.
Definition: DtObserver.h:38
bool myAllowReset
Definition: DtObserver.h:761
boost::signalslib::signal< void(DtObserver *, DtObserverObject::DtLodCenterSettings)> signal_lodCenterSettingsChanged
Boost signal called when the observer&#39;s LOD Center Settings has changed.
Definition: DtObserver.h:592
float myEntityLodScale
Definition: DtObserver.h:767
Contains makVrv::DtObserverObject class declaration.
bool myConnectedToElementDataSignals
Definition: DtObserver.h:760
DtCameraShake * myCameraShake
Definition: DtObserver.h:770
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
bool myAttachedXDelayedFlag
Definition: DtObserver.h:776
bool myAttachedRollDelayedFlag
Definition: DtObserver.h:781
std::vector< EntryAttributes > EntryAttributesList
Define the type used to signal changes to one or more attributes for one or more elements.
Definition: DtElementAttributeManager.h:44
boost::signalslib::signal< void(DtObserver *, int)> signal_rotationSpeedGainChanged
Boost signal called when the rotation speed gain is changed.
Definition: DtObserver.h:568
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
unsigned int myPartId
Definition: DtObserver.h:757
boost::signalslib::signal< void(DtObserver *, int)> signal_orbitSpeedGainChanged
Boost signal called when the orbit speed gain is changed.
Definition: DtObserver.h:571
boost::signalslib::signal< void(DtObserver *, int)> signal_gainPrecisionChanged
Boost signal called when the gain precision is changed.
Definition: DtObserver.h:574
boost::signalslib::signal< void(DtObserver *, double)> signal_modelScaleFactorChanged
Boost signal called when the model scale factor is changed.
Definition: DtObserver.h:577
NorthType
Definition: DtObserverObject.h:62
Definition of a sensor.
Definition: DtSensor.h:30
boost::signalslib::signal< void(DtObserver *, DtObserverObject::SpeedScalingMode scalingMode)> signal_speedScalingModeChanged
Signal emitted when an observer&#39;s speed scaling mode changes.
Definition: DtObserver.h:600
float myDelayedAttachedXValue
Definition: DtObserver.h:782
boost::signalslib::signal< void(const std::string &, DtUniqueID)> signal_objectAttached
Boost signal called when observer attaches to an object.
Definition: DtObserver.h:553
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
boost::signalslib::signal< void(DtObserver *, double)> signal_entityLodScaleChanged
Boost signal called when the observer&#39;s LOD Distance Scale used for entities is changed.
Definition: DtObserver.h:589
bool myAttachmentHas3DCockpit
Definition: DtObserver.h:752
std::string myPaperMapLayer
Definition: DtObserver.h:772
bool myProjectionIs2D
Definition: DtObserver.h:771
bool myOrientToTargetConstraint
Definition: DtObserver.h:758
The ocean layer is a type of terrain layer which contains information about an area that should be re...
Definition: DtOceanLayer.h:25
DtObserverConfiguration * myConfiguration
Definition: DtObserver.h:745
std::vector< DtElementEntry * > ElementList
Type definition for a vector of DtElementEntry pointers.
Definition: DtElementData.h:47
Contains makArchives::DtObserverStateRecord class.
Base class to provide boost signal/slot management.
Configuration for a single channel Serialized and sent to remote displays as necessary to configure r...
Definition: DtChannelConfiguration.h:24
boost::signalslib::signal< void()> signal_terrainChanged
Called when the observer sees a change in terrain which might require updates to observer settings...
Definition: DtObserver.h:621
bool myHideModelOnAttach
Definition: DtObserver.h:751
boost::signalslib::signal< void(DtObserver *, bool)> signal_isFrustumBasedViewMagnificationEnabledChanged
Boost signal called when the observer&#39;s use of an effective zoom calculation has changed.
Definition: DtObserver.h:608
A DtObserverSettingsRecord contains the settings of an observer.
Definition: DtObserverSettingsRecord.h:20
const char int mode
Definition: ioapi.h:38
bool myAttachmentDelayed
Definition: DtObserver.h:774
Contains the DtElementAttributeManager class declaration.
The abstract interface necessary for agents.
Definition: DtAgentManagerInterface.h:33
bool myAttachedPitchDelayedFlag
Definition: DtObserver.h:780
bool myHasInitialLocation
Definition: DtObserver.h:764
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:76
std::vector< DtUniqueID > myCurrentAttachments
Definition: DtObserver.h:754
float myTerrainLodScale
Definition: DtObserver.h:768
A utility Quaternion class.
Definition: DtQuat.h:19
boost::signalslib::signal< void(DtObserver *, double)> signal_viewMagnificationChanged
Boost signal called when the observer&#39;s view magnification is changed.
Definition: DtObserver.h:583
boost::signalslib::signal< void(DtObserver *, std::string)> signal_paperMapLayerChanged
Signal called when the observer&#39;s paper map layer is changed.
Definition: DtObserver.h:595
voidpf uLong offset
Definition: ioapi.h:42
float myDelayedAttachedYValue
Definition: DtObserver.h:783
Provides an algorithm for shaking the camera.
Definition: DtCameraShake.h:23
DtSignalConnectionManager myConnections
Definition: DtObserver.h:743
float myDelayedAttachedRollValue
Definition: DtObserver.h:787
float myDelayedAttachedYawValue
Definition: DtObserver.h:785
bool myAttachedYDelayedFlag
Definition: DtObserver.h:777
boost::signalslib::signal< void(DtObserver *, int)> signal_observerModeChanged
Boost signal called when observer&#39;s mode changed.
Definition: DtObserver.h:559
DtDe & myDe
Definition: DtObserver.h:742
DtDe & de()
Get the observer&#39;s DtDe.
Definition: DtObserver.h:52
double myViewMagnification
Definition: DtObserver.h:766
bool myAttachedYawDelayedFlag
Definition: DtObserver.h:779
boost::signalslib::signal< void(DtObserver *, std::string)> signal_modelScaleTypeChanged
Boost signal called when the model scale type is changed.
Definition: DtObserver.h:580
float myDelayedAttachedZValue
Definition: DtObserver.h:784
AttachType
Definition: DtObserverObject.h:42

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)