![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2000 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: remEnvNetIf.h,v $ $Revision: 1.10 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00017 00018 00019 #ifndef DtSimRemoteEnvironmentalNetInterface_H_ 00020 #define DtSimRemoteEnvironmentalNetInterface_H_ 00021 00022 #include <vl/envProcessSR.h> 00023 #include <vl/reflEnvProc.h> 00024 #include <vlpi/disEnums.h> 00025 00026 #include "vrfobjcore/envNetIface.h" 00027 #include "vrfobjcore/simObjSR.h" 00028 00038 00039 #include "vrfobjcore/vrfobjcoreDefines.h" 00040 class DT_DLL_vrfobjcore DtSimRemoteEnvironmentalNetInterface : public 00041 DtSimEnvironmentalNetInterface 00042 { 00043 protected: 00045 DtSimRemoteEnvironmentalNetInterface(); 00046 00047 public: 00048 00050 DtSimRemoteEnvironmentalNetInterface(const DtString & name, 00051 DtVrfObject * simObject, 00052 DtReaderWriterRegistry * parentRegistry = 0, 00053 bool publishObject = true); 00054 00056 DtSimRemoteEnvironmentalNetInterface( 00057 const DtSimRemoteEnvironmentalNetInterface& orig, 00058 DtReaderWriterRegistry* parentRegistry = 0); 00059 00061 const DtSimRemoteEnvironmentalNetInterface& operator=( 00062 const DtSimRemoteEnvironmentalNetInterface& orig); 00063 00065 virtual ~DtSimRemoteEnvironmentalNetInterface(); 00066 00069 virtual bool init(); 00070 00072 virtual void onTick(); 00073 00076 virtual void updateFromReflectedObject(); 00077 00080 virtual DtReflectedEnvironmentProcess* reflectedObject() const; 00081 00084 virtual void setupFromNetworkRepository(); 00085 00090 virtual void setReflectedObject(DtReflectedEnvironmentProcess* reflectedObject); 00091 00092 virtual bool isLocal() const { return false; } 00093 00096 virtual DtString type() const; 00097 00100 virtual void setUpdateReceived(bool updateReceived); 00101 00103 virtual bool updateReceived() const; 00104 00108 static DtSimRemoteEnvironmentalNetInterface* isRemoteEnvironmentalNetInterface( 00109 const DtSimObjectNetInterface * objNetInterface); 00110 00111 static void reflectedObjectUpdateCallbackFunction(DtReflectedObject* obj, 00112 void* userData); 00113 00114 static DtSimObjectNetInterface* creator(const DtString& name, 00115 DtVrfObject* simObject, 00116 DtReaderWriterRegistry* parentRegistry, 00117 bool publishObject); 00118 00119 protected: 00121 virtual void updateLocalGeometry( 00122 DtVrfObjectStateRepository* localState); 00123 00124 virtual void updateLocalBoundingGeometry( 00125 DtVrfObjectStateRepository* localState); 00126 00127 virtual void updateLocalObjectState( 00128 DtVrfObjectStateRepository* localState); 00129 00130 virtual void updateLocalObjectType( 00131 DtVrfObjectStateRepository* localState); 00132 00133 virtual void updateLocalModelType( 00134 DtVrfObjectStateRepository* localState); 00135 00136 protected: 00137 00139 DtReflectedEnvironmentProcess* myReflectedObject; 00140 00143 bool myUpdateReceived; 00144 00145 }; 00146 00147 #endif