![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2005 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: ifEmbarkationInformation.h,v $ $Revision: 1.7 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00012 #ifndef DtIfEmbarkationInformation_H_ 00013 #define DtIfEmbarkationInformation_H_ 00014 00015 #include <vrfExtProtocol/ifaceCont.h> 00016 #include <vlutil/vlNetTypes.h> 00017 #include <vlpi/NetStructs.h> 00018 #include "vrfmsgs/ifServerRequestResponse.h" 00019 00020 #include <vector> 00021 00025 00026 const int DtEmbarkCannotEmbark = 0; 00027 const int DtEmbarkSlotAvailable = 1; 00028 const int DtEmbarkCanDisembark = 2; 00029 const int DtEmbarkCannotDisembark = 3; 00030 const int DtEmbarkImmediatelyDisembark = 4; 00031 00034 const int DtEmbarkNoSlotAvailableForEntity = 4; 00035 00036 00037 struct DtNetIfEmbarkationInformation 00038 { 00039 DtNetU32 myResponseId; 00040 DtNetU8 myEmbarkObjectNameLength; 00041 DtNetU8 myParentNameLength; 00042 DtNetU8 myNumberPointsToLoadPosition; 00043 DtNetU8 myResult; 00044 DtNetU32 mySlot; 00045 DtNetU8 myPublishLoadPoints; 00046 DtNetEulerAngles myEmbarkedOrientation; 00047 DtNetU32 myEmbarkedAppearance; 00048 DtNet64Vector myEmbarkedPosition; 00049 DtNetU8 myJumpToLocation; 00050 DtNetU8 myTurnToHeading; 00051 }; 00052 00058 #include "vrfmsgs/vrfmsgsDefines.h" 00059 class DT_DLL_vrfmsgs DtIfEmbarkationInformation : public DtIfServerRequestResponse 00060 { 00061 00062 public: 00064 DtIfEmbarkationInformation(); 00065 00067 DtIfEmbarkationInformation( 00068 const DtIfEmbarkationInformation & orig); 00069 00071 const DtIfEmbarkationInformation & operator=( 00072 const DtIfEmbarkationInformation & orig); 00073 00074 virtual ~DtIfEmbarkationInformation(); 00075 00077 virtual int type() const; 00078 00080 virtual DtSimInterfaceContent * clone() const; 00081 00082 virtual void setEmbarkObject(const DtString&); 00083 virtual const DtString& embarkObject() const; 00084 00085 virtual void setParent(const DtString&); 00086 virtual const DtString& parent() const; 00087 00088 virtual void setResult(short); 00089 virtual short result() const; 00090 00091 virtual void setSlot(int); 00092 virtual int slot() const; 00093 00094 virtual void setEmbarkedAppearance(int); 00095 virtual int embarkedAppearance() const; 00096 00097 virtual void setJumpToLocation(bool); 00098 virtual bool jumpToLocation() const; 00099 00100 virtual void setTurnToHeading(bool); 00101 virtual bool turnToHeading() const; 00102 00103 virtual void setEmbarkedOrientation(const DtTaitBryan&); 00104 virtual const DtTaitBryan& embarkedOrientation() const; 00105 00106 virtual void setEmbarkedPosition(const DtVector&); 00107 virtual const DtVector& embarkedPosition() const; 00108 00109 virtual void setLoadPath(const std::vector<DtVector>&); 00110 virtual void addLoadPathPoint(const DtVector&); 00111 virtual const std::vector<DtVector>& loadPath() const; 00112 00114 virtual int netRepSize() const; 00115 00117 virtual bool setFromNet(const char* contentBuffer, unsigned contentSize); 00118 00121 virtual bool setToNet(); 00122 00125 virtual void printDataToString(DtString& str); 00126 00130 static DtSimInterfaceContent* creator(); 00131 00132 virtual void setPublishLoadPoints(bool); 00133 virtual bool publishLoadPoints() const; 00134 00135 protected: 00136 DtString myEmbarkObject; 00137 DtString myParent; 00138 short myResult; 00139 int mySlot; 00140 int myEmbarkedAppearance; 00141 DtTaitBryan myEmbarkedOrientation; 00142 DtVector myEmbarkedPosition; 00143 std::vector<DtVector> myLoadPath; 00144 bool myPublishLoadPoints; 00145 bool myJumpToLocation; 00146 bool myTurnToHeading; 00147 }; 00148 00149 #endif