![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /********************************************************************* 00002 ** Copyright (c) 1999 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: ifAggregateAs.h,v $ $Revision: 1.14 $ $State: Exp $ 00007 *********************************************************************/ 00008 00011 00012 #ifndef DtIfAggregateAs_H_ 00013 #define DtIfAggregateAs_H_ 00014 00015 #include <vrfExtProtocol/ifaceCont.h> 00016 #include <vl/hostStructs.h> 00017 #include <vlutil/vlList.h> 00018 00019 00022 00023 struct DtNetIfAggregateAs 00024 { 00025 DtNetEntityType myEntityType; 00026 DtNet64Vector myPosition; 00027 DtNetFloat64 myHeading; 00028 DtNetU32 myRequestId; 00029 DtNetU16 myNumSubordinates; 00030 DtNetU8 myForceType; 00031 DtNetU8 myInitialAggregateState; 00032 }; 00033 00050 #include "vrfmsgs/vrfmsgsDefines.h" 00051 class DT_DLL_vrfmsgs DtIfAggregateAs : public DtSimInterfaceContent 00052 { 00053 public: 00054 00056 DtIfAggregateAs(); 00057 00059 virtual ~DtIfAggregateAs(); 00060 00062 DtIfAggregateAs(const DtIfAggregateAs& orig); 00063 00065 DtIfAggregateAs& operator=(const DtIfAggregateAs& orig); 00066 00068 virtual int type() const; 00069 00070 virtual DtSimInterfaceContent * clone() const; 00071 00073 virtual DtForceType forceType() const; 00074 virtual void setForceType(DtForceType force); 00075 00077 virtual const DtEntityType & entityType() const; 00078 virtual void setEntityType(const DtEntityType & type); 00079 00081 virtual void setPosition(const DtVector& position); 00082 virtual const DtVector& position() const; 00083 00085 virtual DtReal heading() const; 00086 virtual void setHeading(DtReal heading); 00087 00090 virtual unsigned long requestId() const; 00091 virtual void setRequestId(unsigned long id); 00092 00094 virtual void addSubordinate(const DtString& name); 00095 00098 virtual DtList* subordinates(); 00099 00103 virtual DtAggregateState initialAggregateState() const; 00104 virtual void setInitialAggregateState(DtAggregateState aggregateState); 00105 00106 virtual int netRepSize() const; 00107 virtual bool setFromNet(const char* contentBuffer, 00108 unsigned contentSize); 00109 virtual bool setToNet(); 00110 00111 virtual void printDataToString(DtString& str); 00112 00113 static DtSimInterfaceContent* creator(); 00114 00115 protected: 00116 00117 DtForceType myForceType; 00118 DtEntityType myEntityType; 00119 DtVector myPosition; 00120 DtReal myHeading; 00121 DtList myEntitiesToAggregate; 00122 unsigned long myRequestId; 00123 DtU8 myInitialAggregateState; 00124 }; 00125 00126 #endif