VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtCigiEntityVisualizer.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2016 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCigi/vrvCigi.h>
13 
15 #include <vrvCore/DtUniqueID.h>
16 
18 
19 #include <matrix/vlTaitBryan.h>
20 #include <matrix/vlVector.h>
21 
22 #include <CigiShortArtPartCtrlV3.h>
23 
24 #include <map>
25 
26 class CigiArtPartCtrlV3;
27 class CigiCompCtrlV3_3;
28 class CigiEntityCtrlV3_3;
29 class CigiRateCtrlV3_2;
30 class CigiShortCompCtrlV3_3;
31 
32 namespace makCigiExt
33 {
34  class DtCigiDiGuyCtrl;
35 }
36 
37 namespace makVrv
38 {
39  class DtAgentManagerInterface;
40  class DtCigiBaseEntity;
41  class DtCigiConnection;
42  class DtCigiEntity;
43 
48  {
49  public:
50 
52 
53  typedef std::map<int, DtCigiBaseEntity*> IdToEntityMap;
54 
56  virtual ~DtCigiEntityVisualizer();
57 
60  virtual DtUniqueID uniqueIdForCigiEntity(int cigiEntId) const;
61 
64  virtual const DtCigiBaseEntity* cigiEntity(int entityId) const;
65 
68  virtual int findEntityWithUniqueId(DtUniqueID idToFind) const;
69 
71 
72  IdToEntityMap& entityList()
73  {
74  return myIdToEntityMap;
75  }
76 
77  const IdToEntityMap& entityList() const
78  {
79  return myIdToEntityMap;
80  }
82 
83  protected:
86  DtAgentManagerInterface& aSceneInterface);
87 
89  virtual void processEntityControl(const CigiEntityCtrlV3_3& packet);
90 
91  // Process a CIGI Rate Control packet
92  virtual void processRateControl(const CigiRateCtrlV3_2& packet);
93 
95  virtual void processArtPartControl(const CigiArtPartCtrlV3& packet);
96 
98  virtual void processShortArtPartControl(const CigiShortArtPartCtrlV3& packet);
99 
102  virtual void processComponentControl(CigiCompCtrlV3_3& packet);
103 
106  virtual void processShortComponentControl(CigiShortCompCtrlV3_3& packet);
107 
109  virtual void processDiGuyControl(const makCigiExt::DtCigiDiGuyCtrl& packet);
110 
114  virtual void setTspiFromPacket(
115  const CigiEntityCtrlV3_3& packet, DtCigiBaseEntity* entity);
116 
119  virtual DtCigiBaseEntity* createNewEntity(
120  int entityId, int entityType);
121 
123  virtual void removeEntity(int entityId);
124 
127  virtual void setArtPartWithDof(int partId, float val,
128  CigiBaseShortArtPartCtrl::DofSelectGrp selection,
129  DtCigiBaseEntity* entity);
130 
132  virtual void setAnimationState(const CigiEntityCtrlV3_3& packet,
133  DtCigiBaseEntity* entity);
134 
137  virtual void resetSpatialAttributes();
138 
139  protected:
141  DtCigiEntityVisualizer& operator=(const DtCigiEntityVisualizer& orig);
142 
143 
144  protected:
145  std::map<int, DtCigiBaseEntity*> myIdToEntityMap;
148  };
149 
152  {
153  public:
156 
159 
161  static DtCigiEntityVisualizerCreator& instance( DtDe& de );
162 
164  static DtCigiEntityVisualizerCreator& instance( DtCigiConnection& con );
165 
167  static void copyInstance(DtCigiConnection& con, DtDe& de);
168 
170  virtual DtCigiEntityVisualizer* create( DtCigiConnection& connection,
171  DtAgentManagerInterface& aSceneInterface ) const;
172  };
173 }

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)