VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtEnvironmentalEmbarkationUpdater.h
Go to the documentation of this file.
1 /*****************************************************************************
2 * Copyright (c) 2023 MAK Technologies, Inc.
3 * All rights reserved.
4 *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/vrvCore.h>
14 #include <vrvCore/DtUniqueID.h>
16 
17 namespace makVrv
18 {
19  class DtDe;
20  class DtCoordinateSystem;
21 
33  {
34  public:
37 
40 
43 
46 
49 
52 
54  DtEnvironmentalEmbarkationUpdater& operator=( const DtEnvironmentalEmbarkationUpdater&& other ) = delete;
55  public:
57  using VertexSceneObjects = std::unordered_map<unsigned int, std::unordered_map<DtUniqueID, DtSceneObject*>>;
58 
60  virtual VertexSceneObjects& vertexSceneObjects();
61  virtual const VertexSceneObjects& vertexSceneObjects() const;
62 
67  virtual void addVertexSceneObjects( unsigned int index, std::vector<DtUniqueID>& soMap );
69  virtual void removeVertexSceneObjects( unsigned int index );
70  virtual void addVertexSceneObject( unsigned int index, DtUniqueID& soId );
71  virtual void removeVertexSceneObject( unsigned int index, DtUniqueID& soId );
73 
76  virtual void setEmbarkationMode( DtEmbarkationMode mode );
77  protected:
78  virtual void setOutputPositionsAndOrientations( const std::vector<DtVector>& positions, const std::vector<DtTaitBryan>& orientations );
79  DtSceneObject* findSceneObjectFromId( DtUniqueID& id );
81  virtual void doEmbarkation( DtTime tNow ) override;
82 
85  virtual void doSinglePointEmbarkation( DtTime tNow );
87  virtual void doMultiPointEmbarkation( DtTime tNow );
88 
90  virtual void slot_coordinateSystemChanged();
91  protected:
95  };
96 }
VertexSceneObjects myVertexSceneObjects
Definition: DtEnvironmentalEmbarkationUpdater.h:92
A DtMultiPointEmbarkationUpdater updates a scene object that has multiple points and can be positione...
Definition: DtMultiPointEmbarkationUpdater.h:33
DtEmbarkationMode
Embarkation mode Currently only used by environmentals.
Definition: DtEntityStateEnums.h:24
DtCoordinateSystem * myCoordinateSystem
Definition: DtEnvironmentalEmbarkationUpdater.h:94
Contains enums relating to entities.
Contains the makVrv::DtMultiPointEmbarkationUpdater class declaration.
DtEnvironmentalEmbarkationUpdater is an updater that calculates embarked scene object positions...
Definition: DtEnvironmentalEmbarkationUpdater.h:32
std::unordered_map< unsigned int, std::unordered_map< DtUniqueID, DtSceneObject * >> VertexSceneObjects
Vector of vertex scene objects.
Definition: DtEnvironmentalEmbarkationUpdater.h:57
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:40
DtEmbarkationMode myEmbarkationMode
Definition: DtEnvironmentalEmbarkationUpdater.h:93
const char int mode
Definition: ioapi.h:38
A DtSceneObject represents an object that can be positioned in the scene by (possibly) attaching it t...
Definition: DtSceneObject.h:44
Contains makVrv::DtUniqueID type.
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
Contains DLL export macros.

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)