![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 00002 /****************************************************************************** 00003 ** Copyright (c) 2009 MAK Technologies, Inc. 00004 ** All rights reserved. 00005 ******************************************************************************/ 00006 00010 00011 #pragma once 00012 00013 #include <vrvCore/vrvCore.h> 00014 #include <vrvCore/DtSimState.h> 00015 #include <vrvCore/DtStateView.h> 00016 #include <vrvCore/DtSimObjectEntryCollection.h> 00017 #include <vrvCore/DtStateViewCollection.h> 00018 00019 #include <matrix/vlVector.h> 00020 #include <matrix/vlTaitBryan.h> 00021 00022 #include <string> 00023 00024 namespace makVrv 00025 { 00026 class DtMessage; 00027 00031 struct DT_DLL_VRVCORE DtVrlinkSimulatedBaseState : public DtSimState 00032 { 00033 public: 00035 DtVrlinkSimulatedBaseState(); 00036 00038 virtual ~DtVrlinkSimulatedBaseState(); 00039 00040 bool operator==(const DtVrlinkSimulatedBaseState& rhs) const 00041 { 00042 return ((myMarkingText == rhs.myMarkingText) && 00043 (myEntityType == rhs.myEntityType) && 00044 (myForce == rhs.myForce)); 00045 } 00046 00047 bool operator!=(const DtVrlinkSimulatedBaseState& rhs) const 00048 { 00049 return !(*this == rhs); 00050 } 00051 00052 public: 00053 std::string myGlobalId; 00054 std::string myEntityId; 00055 std::string myMarkingText; 00056 std::string myEntityType; 00057 std::string myAttachedToId; 00058 int myForce; 00059 }; 00060 00061 struct DT_DLL_VRVCORE DtVrlinkSimulatedEntityState : public DtVrlinkSimulatedBaseState 00062 { 00063 00064 public: 00065 00067 DtVrlinkSimulatedEntityState(); 00068 00070 virtual ~DtVrlinkSimulatedEntityState(); 00071 00072 public: 00073 00074 DtVector myLocation; 00075 DtVector myVelocity; 00076 DtVector myRelativeVelocity; 00077 DtVector myAcceleration; 00078 DtTaitBryan myOrientation; 00079 DtVector myRotationalVelocity; 00080 int myAppearance; 00081 int myCapabilities; 00082 00083 std::string myDIGuyAppearance; 00084 std::string myDIGuyCharacter; 00085 std::string myGuise; 00086 int myDRAlgorithm; 00087 }; 00088 00090 DT_DLL_VRVCORE DtMessage& operator<<( DtMessage& msg,const DtVrlinkSimulatedEntityState& state ); 00091 00093 DT_DLL_VRVCORE DtMessage& operator>>( DtMessage& msg, DtVrlinkSimulatedEntityState& state ); 00094 00096 DT_DLL_VRVCORE DtMessage& operator<<( DtMessage& msg,const DtVrlinkSimulatedBaseState& state ); 00097 00099 DT_DLL_VRVCORE DtMessage& operator>>( DtMessage& msg, DtVrlinkSimulatedBaseState& state ); 00100 00102 typedef DtStateView<DtVrlinkSimulatedEntityState> DtVrlinkEntityStateView; 00103 00105 typedef DtStateViewCollection<DtVrlinkSimulatedEntityState> DtVrlinkEntityStateViewCollection; 00106 00107 #ifndef _WIN32 00108 template class DtStateView<DtVrlinkSimulatedEntityState>; 00109 template class DtStateViewCollection<DtVrlinkSimulatedEntityState>; 00110 #endif 00111 }