MAK RTIspy API Documentation for HLA 1.3
setFederateSwitches.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2004 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: setFederateSwitches.h,v $ $Revision: 1.6 $ $State: Exp $
00007 *********************************************************************/
00008 
00011 
00012 #ifndef DtSetFederateSwitchesInteraction_H_
00013 #define DtSetFederateSwitchesInteraction_H_
00014 
00015 #ifdef DtMOM
00016 #if defined(DtIFSPEC1516) || defined(DtIFSPEC1516E)
00017 
00018 #include "rtiMsConfig.h"
00019 #include "internalTypes.h"
00020 #include "mInteraction.h"
00021 #include <vlutil/vlList.h>
00022 
00023 class DtMomInterCbMgr;
00024 class DtSetFederateSwitchesInteraction;
00025 typedef void (*DtSetFederateSwitchesInteractionCb)
00026    (const DtSetFederateSwitchesInteraction& inter, void* usr);
00027 
00028 class DT_DLL_LRC DtSetFederateSwitchesInteraction :
00029    public DtServiceInteraction
00030 {
00031 public:
00032 
00034    DtSetFederateSwitchesInteraction();
00035 
00037    virtual ~DtSetFederateSwitchesInteraction();
00038 
00040    DtSetFederateSwitchesInteraction(
00041       const DtSetFederateSwitchesInteraction& orig);
00042  
00044    DtSetFederateSwitchesInteraction& operator=(
00045       const DtSetFederateSwitchesInteraction& orig);
00046 
00049    virtual const DtPhvps& phvps();
00050 
00053    virtual bool setFromPhvps(const DtPhvps& phvps);
00054 
00056    virtual bool conveyRegions() const;
00057    virtual void setConveyRegions(bool data);
00058    
00060    virtual bool receivedConveyRegions() const;
00061 
00062 #ifdef DtIFSPEC1516E
00063 
00064    virtual bool conveyProducingFederate() const;
00065    virtual void setConveyProducingFederate(bool data);
00066 
00068    virtual bool receivedConveyProducingFederate() const;
00069 #endif
00070 
00071 public:
00073    static DtServiceInteraction* create();
00074 
00076    static void addCallback(DtMomInterCbMgr* callBackManager,
00077       DtSetFederateSwitchesInteractionCb cb, void* usr);
00078    static void removeCallback(DtMomInterCbMgr* callBackManager,
00079       DtSetFederateSwitchesInteractionCb cb, void* usr);
00080 
00081 protected:
00082 
00084    virtual void encodeConveyRegions(
00085       const DtMomInteraction& data,
00086       DtPhvps* parameters,
00087       DtParameterHandle parameterHandle);
00088 
00090    virtual void decodeConveyRegions(
00091       DtMomInteraction* data,
00092       const DtPhvps& parameters,
00093       int index);
00094 
00095 #ifdef DtIFSPEC1516E
00096 
00097    virtual void encodeConveyProducingFederate(
00098       const DtMomInteraction& data,
00099       DtPhvps* parameters,
00100       DtParameterHandle parameterHandle);
00101    
00103    virtual void decodeConveyProducingFederate(
00104       DtMomInteraction* data,
00105       const DtPhvps& parameters,
00106       int index);
00107 #endif
00108    
00109 public:
00110    static const char* theInteractionName;
00111 
00112 protected:
00114    bool myConveyRegions;
00115 
00116    bool myReceivedConveyRegions;
00117 
00118    const char *CONVEY_REGIONS_PARAMETER_NAME;
00119 
00120 #ifdef DtIFSPEC1516E
00121    bool myConveyProducingFederate;
00122 
00123    bool myReceivedConveyProducingFederate;
00124 
00125    const char *CONVEY_PRODUCING_FEDERATE_PARAMETER_NAME;
00126 #endif
00127 
00128 };
00129 
00130 #endif //! DtIFSPEC1516
00131 #endif //! DtMOM
00132 #endif //! DtSetFederateSwitchesInteraction_H_

Document ID: Generated on Thu Jun 14 14:15:04 EDT 2012 from SVN revision 116116
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)