![]() |
VR-Link API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 00007 #ifndef hRepCompInter_H_ 00008 #define hRepCompInter_H_ 00009 00010 #if DtHLA 00011 00012 #include "hIntWEncDec.h" 00013 #include "hostStructs.h" 00014 #include <matrix/vlMath.h> 00015 00016 00017 00021 00022 class DT_DLL_VL DtRepairCompleteInteraction; 00023 class DT_DLL_VL DtExerciseConn; 00024 00025 00027 typedef void (*DtRepairCompleteInteractionCb) 00028 (DtRepairCompleteInteraction* inter, void* usr); 00029 00030 00035 00036 class DT_DLL_VL DtRepairCompleteInteraction : public DtInteractionWithEncDec 00037 { 00038 public: 00039 00041 DtRepairCompleteInteraction(); 00042 00044 virtual ~DtRepairCompleteInteraction(); 00045 00047 DtRepairCompleteInteraction(const DtRepairCompleteInteraction& orig); 00048 00050 DtRepairCompleteInteraction& operator=( 00051 const DtRepairCompleteInteraction& orig); 00052 00054 virtual void printData() const; 00055 00057 virtual void printDataToStream(std::ostream& stream) const; 00058 00060 virtual void setReceivingId(const DtGlobalObjectDesignator &id); 00061 virtual const DtGlobalObjectDesignator &receivingId() const; 00062 00064 virtual void setRepairingId(const DtGlobalObjectDesignator &id); 00065 virtual const DtGlobalObjectDesignator &repairingId() const; 00066 00068 virtual void setRepairType(DtRepairType type); 00069 virtual DtRepairType repairType() const; 00070 00072 virtual const char* name() const; 00073 00074 public: 00075 00078 static DtInteraction* create(); 00079 00082 static void addCallback(DtExerciseConn* conn, 00083 DtRepairCompleteInteractionCb cb, void* usr, 00084 DtDDMRegionSP region = DtDDMRegionSP()); 00085 static void removeCallback(DtExerciseConn* conn, 00086 DtRepairCompleteInteractionCb cb, void* usr, 00087 DtDDMRegionSP region = DtDDMRegionSP()); 00088 00089 protected: 00090 00091 DtGlobalObjectDesignator myReceivingObject; 00092 DtGlobalObjectDesignator myRepairingObject; 00093 DtRepairType myRepairType; 00094 }; 00095 00096 inline const DtGlobalObjectDesignator& DtRepairCompleteInteraction:: 00097 receivingId() const 00098 { 00099 return myReceivingObject; 00100 } 00101 00102 inline const DtGlobalObjectDesignator& DtRepairCompleteInteraction:: 00103 repairingId() const 00104 { 00105 return myRepairingObject; 00106 } 00107 00108 inline DtRepairType DtRepairCompleteInteraction::repairType() const 00109 { 00110 return myRepairType; 00111 } 00112 00113 inline void DtRepairCompleteInteraction::setReceivingId( 00114 const DtGlobalObjectDesignator &id) 00115 { 00116 myReceivingObject = id; 00117 } 00118 00119 inline void DtRepairCompleteInteraction::setRepairingId( 00120 const DtGlobalObjectDesignator &id) 00121 { 00122 myRepairingObject = id; 00123 } 00124 00125 inline void DtRepairCompleteInteraction::setRepairType(DtRepairType t) 00126 { 00127 myRepairType = t; 00128 } 00129 00130 inline const char* DtRepairCompleteInteraction::name() const 00131 { 00132 return "DtRepairCompleteInteraction"; 00133 } 00134 00135 #endif 00136 #endif 00137