VR-Link API Documentation for DIS
hReflPointObj.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 
00007 #ifndef hReflPointObj_H_
00008 #define hReflPointObj_H_
00009 
00010 #if DtHLA 
00011 
00012 #include "pointObjSR.h"
00013 #include "hReflectedObj.h"
00014 
00019 
00022 class DT_DLL_VL DtReflectedPointObject;
00023 typedef void (*DtPointObjectCallbackFunction)(
00024    DtReflectedPointObject* obj, void* userData);
00025 
00030 
00031 class DT_DLL_VL DtReflectedPointObject : public DtReflectedObject
00032 {
00033 public:
00034 
00036    typedef DtPointObjectRepository* (*DtStateRepCreator)();
00037 
00038 public:
00039 
00041    DtReflectedPointObject(DtHlaObject* obj, DtExerciseConn* conn);
00042 
00044    virtual ~DtReflectedPointObject();
00045 
00047    virtual DtPointObjectRepository* pointObjectRep() const;
00048 
00050    virtual DtPointObjectRepository* posr() const;
00051 
00053    virtual DtReflectedPointObject* next() const;
00054 
00056    virtual DtReflectedPointObject* prev() const;
00057 
00060    virtual DtReflectedPointObject* wrapNext() const;
00061 
00064    virtual DtReflectedPointObject* wrapPrev() const;
00065 
00067    virtual void addPostUpdateCallback(
00068       DtPointObjectCallbackFunction cb, void* userData);
00069 
00070    virtual void removePostUpdateCallback(
00071       DtPointObjectCallbackFunction cb, void* userData);
00072 
00073 public:
00074 
00076    static DtStateRepCreator setStateRepCreator(DtStateRepCreator creator);
00077 
00078 protected:
00079 
00081    DtReflectedPointObject(const DtReflectedPointObject& orig);
00082 
00084    DtReflectedPointObject& operator=(const DtReflectedPointObject& orig);
00085 
00086 protected:
00087 
00088    static DtStateRepCreator theStateRepCreator;
00089 };
00090 
00091 inline DtPointObjectRepository* DtReflectedPointObject::pointObjectRep() const
00092 { 
00093    return (DtPointObjectRepository*) myStateRep;
00094 }
00095 
00096 inline DtPointObjectRepository* DtReflectedPointObject::posr() const
00097 {
00098    return (DtPointObjectRepository*) myStateRep;
00099 }
00100 
00101 #endif   //DtHLA
00102 #endif   //hReflPointObj_H_
00103 

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)