VR-Link API Documentation for DIS
dReflIff.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 
00009 
00010 #ifndef DtReflectedIff_H_
00011 #define DtReflectedIff_H_
00012 
00013 #if DtDIS
00014 
00015 #include "hostStructs.h"
00016 #include "iffSR.h"
00017 #include "dReflectedObj.h"
00018 #include "objIdHashKey.h"
00019 
00020 
00021 class DT_DLL_VL DtReflectedIff;
00022 
00025 typedef void (*DtIffCallbackFunction)(
00026    DtReflectedIff* obj, void* userData);
00027 
00028 
00033 class DT_DLL_VL DtReflectedIff : public DtReflectedObject
00034 {
00035 public:
00036 
00038    typedef DtIffStateRepository* (*DtStateRepCreator)();
00039 
00040 public:
00041 
00043    DtReflectedIff(DtExerciseConn* conn,
00044       const DtGlobalObjectDesignator& emittingEntity);
00045 
00047    virtual ~DtReflectedIff();
00048 
00050    virtual DtIffStateRepository* iffRep() const;
00051 
00053    virtual DtIffStateRepository* isr() const;
00054 
00058    virtual DtStateRepository* stateRep() const;
00059 
00062    virtual void processStateMessage(const DtStateMsg& msg);
00063 
00065    virtual DtReflectedIff* next() const;
00066 
00068    virtual DtReflectedIff* prev() const;
00069 
00072    virtual DtReflectedIff* wrapNext() const;
00073 
00076    virtual DtReflectedIff* wrapPrev() const;
00077 
00079    virtual void addPostUpdateCallback(
00080       DtIffCallbackFunction cb, void* userData);
00081 
00082    virtual void removePostUpdateCallback(
00083       DtIffCallbackFunction cb, void* userData);
00084 
00086    virtual const DtBaseHashKey& hashKey() const;
00087 
00090    virtual const DtGlobalObjectDesignator& globalId() const;
00091 
00093    virtual DtString idString() const;
00094 
00095 public:
00096 
00098    static void setStateRepCreator(DtStateRepCreator creator);
00099    static DtStateRepCreator stateRepCreator(void);
00100 
00101 protected:
00102 
00104    DtReflectedIff(const DtReflectedIff& orig);
00105 
00107    DtReflectedIff& operator=(
00108       const DtReflectedIff& orig);
00109 
00110 protected:
00111 
00112    DtIffStateRepository *myStateRepository;
00113    DtObjectIdHashKey myHashKey;
00114    DtString myIdString;
00115 
00116 protected:
00117   
00118   static DtStateRepCreator theStateRepCreator; 
00119 
00120 };
00121 
00122 
00123 #endif
00124 #endif
00125 

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)