VR-Link API Documentation for HLA 1.3
hRefActSonBm.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 hRefActSonBm_H_
00008 #define hRefActSonBm_H_
00009  
00010 #if DtHLA
00011 
00012 #include "hReflectedObj.h"
00013 #include "actSonBeamSR.h"
00014 
00019 
00020 class DT_DLL_VL DtReflectedActiveSonarBeam;
00021 
00024 typedef void (*DtActiveSonarBeamCallbackFunction)(
00025    DtReflectedActiveSonarBeam* obj, void* userData);
00026 
00030 class DT_DLL_VL DtReflectedActiveSonarBeam : public DtReflectedObject
00031 {
00032 public:
00034    typedef DtActiveSonarBeamRepository* (*DtStateRepCreator)();
00035 
00036 public:
00038    DtReflectedActiveSonarBeam(DtHlaObject* obj, DtExerciseConn* exConn);
00039 
00041    virtual ~DtReflectedActiveSonarBeam();
00042 
00044    virtual DtActiveSonarBeamRepository* activeSonarBeamRep() const;
00045 
00047    virtual DtActiveSonarBeamRepository* asr() const;
00048 
00051    virtual DtReflectedActiveSonarBeam* next() const;
00052 
00055    virtual DtReflectedActiveSonarBeam* prev() const;
00056 
00059    virtual DtReflectedActiveSonarBeam* wrapNext() const;
00060 
00063    virtual DtReflectedActiveSonarBeam* wrapPrev() const;
00064 
00067    virtual void addPostUpdateCallback(
00068       DtActiveSonarBeamCallbackFunction cb, void* userData);
00069 
00072    virtual void removePostUpdateCallback(
00073       DtActiveSonarBeamCallbackFunction cb, void* userData);
00074 
00075 public:
00077    static DtStateRepCreator setStateRepCreator(DtStateRepCreator creator);
00078 
00079 
00080 protected:
00082    DtReflectedActiveSonarBeam(const DtReflectedActiveSonarBeam& orig);
00083 
00085    DtReflectedActiveSonarBeam& operator=(const DtReflectedActiveSonarBeam& orig);
00086 
00087 protected:
00089    static DtStateRepCreator theStateRepCreator;
00090 };
00091 
00092 inline DtActiveSonarBeamRepository* DtReflectedActiveSonarBeam::activeSonarBeamRep() const
00093 {
00094    return (DtActiveSonarBeamRepository*) myStateRep;
00095 }
00096 
00097 inline DtActiveSonarBeamRepository* DtReflectedActiveSonarBeam::asr() const
00098 {
00099    return (DtActiveSonarBeamRepository*) myStateRep;
00100 }
00101 
00102 
00103 #endif
00104 #endif
00105 

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)