![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2000 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: remEntNetIf.h,v $ $Revision: 1.14 $ $State: Exp $ 00007 *******************************************************************************/ 00008 #ifndef DtSimRemoteEntityNetInterface_H_ 00009 #define DtSimRemoteEntityNetInterface_H_ 00010 00011 00015 00017 00018 #include "vrfobjcore/entNetIface.h" 00019 #include <vl/globalObjDes.h> 00020 #include "vrfutil/rwString.h" 00021 00022 00023 class DtReflectedObject; 00024 00033 #include "vrfobjcore/vrfobjcoreDefines.h" 00034 class DT_DLL_vrfobjcore DtSimRemoteEntityNetInterface : public DtSimEntityNetInterface 00035 { 00036 protected: 00038 DtSimRemoteEntityNetInterface(); 00039 00040 public: 00041 00043 DtSimRemoteEntityNetInterface(const DtString& name, DtVrfObject* simObject, 00044 DtReaderWriterRegistry* parentRegistry = 0, bool publishObject = true); 00045 00050 DtSimRemoteEntityNetInterface(const DtSimRemoteEntityNetInterface& orig, 00051 DtReaderWriterRegistry* parentRegistry = 0); 00052 00054 const DtSimRemoteEntityNetInterface& operator=(const 00055 DtSimRemoteEntityNetInterface& orig); 00056 00058 virtual ~DtSimRemoteEntityNetInterface(); 00059 00062 virtual bool init(); 00063 00065 virtual void onTick(); 00066 00070 virtual void updateFromReflectedObject() = 0; 00071 00074 virtual void setupFromNetworkRepository(); 00075 00082 virtual void setReflectedObject(DtReflectedObject* reflectedObject); 00083 00086 virtual const DtReflectedObject* reflectedObject() const; 00087 virtual DtReflectedObject* reflectedObject(); 00088 00090 virtual bool isLocal() const { return false; } 00091 00092 virtual bool isAggregate() const = 0; 00093 00096 virtual void setUpdateReceived(bool updateReceived); 00097 00099 virtual bool updateReceived() const; 00100 00104 static const DtSimRemoteEntityNetInterface * isRemoteEntityNetInterface(const 00105 DtSimObjectNetInterface * objNetInterface); 00106 00107 static DtSimRemoteEntityNetInterface* isRemoteEntityNetInterface( 00108 DtSimObjectNetInterface* objNetInterface); 00109 00110 static void reflectedObjectUpdateCallbackFunction(DtReflectedObject* obj, 00111 void* userData); 00112 00113 protected: 00114 00117 DtReflectedObject * myReflectedObject; 00118 00121 bool myUpdateReceived; 00122 00123 }; 00124 00125 #endif