![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2004 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: setWarheadInfo.h,v $ $Revision: 1.6 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00017 00018 00019 #ifndef DtSetWarheadInfo_H_ 00020 #define DtSetWarheadInfo_H_ 00021 00022 00023 #include "vrftasks/setDataReq.h" 00024 #include "vrfutil/rwString.h" 00025 #include "vrfutil/rwInt.h" 00026 #include <vlpi/disEnums.h> 00027 #include <vl/hostStructs.h> 00028 #include <vlutil/vlNetTypes.h> 00029 #include "vrfutil/rwReal.h" 00030 00032 struct DtNetSetWarheadInfo 00033 { 00034 DtNetU16 myWarheadType; 00035 DtNetU16 myFuzeType; 00036 DtNetU8 myAttackerLength; 00037 DtNetU8 myEventIdLength; 00038 DtNetU8 myTargetNameLength; 00039 DtNetFloat32 myDetonationProximity; 00040 DtNetBoolean myWarheadTypeSpecified; 00041 DtNetBoolean myFuzeTypeSpecified; 00042 DtNetBoolean myAttackerSpecified; 00043 DtNetBoolean myEventIdSpecified; 00044 DtNetBoolean myTargetNameSpecified; 00045 DtNetBoolean myDetonationProximitySpecified; 00046 }; 00047 00057 #include "vrftasks/vrftasksDefines.h" 00058 class DT_DLL_vrftasks DtSetWarheadInfo : public DtSetDataRequest 00059 { 00060 00061 public: 00062 00064 DtSetWarheadInfo(); 00065 00068 DtSetWarheadInfo(const DtString & writeName, 00069 DtReaderWriterRegistry * parentRegistry = 0); 00070 00072 DtSetWarheadInfo(const DtString & writeName, const DtSetWarheadInfo & 00073 orig, DtReaderWriterRegistry * parentRegistry = 0); 00074 00076 const DtSetWarheadInfo & operator=(const DtSetWarheadInfo & orig); 00077 00078 virtual ~DtSetWarheadInfo(); 00079 00081 virtual int type() const; 00082 00084 virtual DtSetDataRequest * clone(const DtString & name, 00085 DtReaderWriterRegistry * parentRegistry = 0) const; 00086 00088 virtual DtString stringRep() const; 00089 00091 virtual void setWarheadType(DtWarheadType wh); 00092 virtual DtWarheadType warheadType() const; 00093 virtual bool warheadTypeSpecified() const; 00094 00096 virtual void setFuzeType(DtDetonatorFuze fuze); 00097 virtual DtDetonatorFuze fuzeType() const; 00098 virtual bool fuzeTypeSpecified() const; 00099 00101 virtual void setAttacker(const DtString& name); 00102 virtual DtString attacker() const; 00103 virtual bool attackerSpecified() const; 00104 00108 virtual void setEventIdString(const DtString& eventId); 00109 virtual DtString eventIdString() const; 00110 virtual bool eventIdSpecified() const; 00111 00115 virtual void setTargetName(const DtString& target); 00116 virtual DtString targetName() const; 00117 virtual bool targetNameSpecified() const; 00118 00122 virtual void setDetonationProximity(DtReal proximity); 00123 virtual DtReal detonationProximity() const; 00124 virtual bool detonationProximitySpecified() const; 00125 00128 virtual int netRepSize() const; 00129 00131 virtual bool setFromNet(const char* contentBuffer, 00132 unsigned contentSize); 00133 00136 virtual bool setToNet(); 00137 00138 static DtSetDataRequest * creator(); 00139 00140 protected: 00141 00142 DtRwInt myWarheadType; 00143 DtRwInt myFuzeType; 00144 DtRwString myAttacker; 00145 DtRwString myEventIdString; 00146 DtRwString myTargetName; 00147 DtRwReal myDetonationProximity; 00148 00149 }; 00150 00151 00152 #endif