VR-Link API Documentation for HLA 1.3
hEmitrBeamPub.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 #pragma once
00006 #if DtHLA 
00007 
00008 
00009 
00010 
00011 #include "hObjPub.h"
00012 
00013 class DtEmitterBeamRepository;
00014 
00019 class DT_DLL_VL DtEmitterBeamPublisher : public DtObjectPublisher 
00020 {
00021 public:
00022 
00024    typedef DtEmitterBeamRepository* (*DtStateRepCreator)();
00025 
00026 public:
00027 
00029    DtEmitterBeamPublisher(
00030       RTI::ObjectClassHandle h,
00031       DtExerciseConn* conn,     
00032       DtEmitterBeamRepository* bsr = 0,
00033       const char* name = 0,
00034       const DtDDMRegionSet* regionSetToUse = 0);
00035 
00037    DtEmitterBeamPublisher(
00038       DtExerciseConn* conn, 
00039       DtEmitterBeamRepository* bsr = 0,
00040       const char* name = 0,
00041       const DtDDMRegionSet* regionSetToUse = 0);
00042 
00048    DtEmitterBeamPublisher(DtHlaObjectWithStateRep* obj, DtExerciseConn* conn);
00049 
00051    virtual ~DtEmitterBeamPublisher();
00052 
00055    virtual DtEmitterBeamRepository* emitrBeamRep();
00056 
00058    virtual DtEmitterBeamRepository* bsr();
00059 
00061    virtual const char* classToUse(
00062       DtEmitterBeamRepository* bsr) const;
00063 
00064 public:
00065 
00067    static DtStateRepCreator setStateRepCreator(DtStateRepCreator creator);
00068    
00069 protected:
00070 
00072    DtEmitterBeamPublisher(const DtEmitterBeamPublisher& orig);
00073 
00075    DtEmitterBeamPublisher& operator=
00076       (const DtEmitterBeamPublisher& orig);
00077 
00078 protected:
00079 
00080    bool myOwnBsr;
00081 
00082 protected:
00083 
00084    static DtStateRepCreator theStateRepCreator;
00085 };
00086 
00087 inline DtEmitterBeamRepository* 
00088    DtEmitterBeamPublisher::emitrBeamRep()
00089 {
00090    return (DtEmitterBeamRepository*) myStateRep;
00091 }
00092 
00093 inline DtEmitterBeamRepository* 
00094    DtEmitterBeamPublisher::bsr()
00095 {
00096    return (DtEmitterBeamRepository*) myStateRep;
00097 }
00098 
00099 #endif   //DtHLA
00100 

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)