MAK RTIspy API Documentation for HLA 1516
repFedLost.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2010 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: repFedLost.h,v $ $Revision: 1.5 $ $State: Exp $
00007 *********************************************************************/
00008 
00011 
00012 #ifndef DtReportFederateLostInteraction_H_
00013 #define DtReportFederateLostInteraction_H_
00014 #ifdef DtMOM
00015 #ifdef DtIFSPEC1516E
00016 
00017 #include "rtiMsConfig.h"
00018 #include "internalTypes.h"
00019 #include "mInteraction.h"
00020 #include <vlutil/vlList.h>
00021 
00022 class DtMomInterCbMgr;
00023 class DtReportFederateLostInteraction;
00024 typedef void (*DtReportFederateLostInteractionCb)
00025    (const DtReportFederateLostInteraction& inter, void* usr);
00026 
00027 class DT_DLL_LRC DtReportFederateLostInteraction : public DtReportInteraction
00028 {
00029 public:
00030 
00032    DtReportFederateLostInteraction(std::auto_ptr < rti1516e::LogicalTime > time);
00033 
00035    virtual ~DtReportFederateLostInteraction();
00036 
00037 private:
00038 
00040    DtReportFederateLostInteraction();
00041 
00043    DtReportFederateLostInteraction(const DtReportFederateLostInteraction& orig);
00044  
00046    DtReportFederateLostInteraction& operator=(const DtReportFederateLostInteraction& orig);
00047 
00048 public:
00049 
00052    virtual const DtPhvps& phvps();
00053 
00056    virtual bool setFromPhvps(const DtPhvps& phvps);
00057 
00059    virtual std::wstring const & federateName() const;
00060    virtual void setFederateName(std::wstring const & data);
00061 
00063    virtual rti1516e::LogicalTime const & timeStamp() const;
00064    virtual void setTimeStamp(rti1516e::LogicalTime const & time);
00065    
00067    virtual std::wstring const & faultDescription() const;
00068    virtual void setFaultDescription(std::wstring const & data);
00069   
00070      
00071 public:
00072 
00074    static void addCallback(DtMomInterCbMgr* callBackManager,
00075       DtReportFederateLostInteractionCb cb, void* usr);
00076    static void removeCallback(DtMomInterCbMgr* callBackManager,
00077       DtReportFederateLostInteractionCb cb, void* usr);
00078 
00079 protected:
00080 
00082    virtual void encodeFederateName(
00083       const DtMomInteraction& data,
00084       DtPhvps* parameters,
00085       DtParameterHandle parameterHandle);
00086 
00088    virtual void encodeTimeStamp(
00089       const DtMomInteraction& data,
00090       DtPhvps* parameters,
00091       DtParameterHandle parameterHandle);
00092 
00094    virtual void encodeFaultDescription(
00095       const DtMomInteraction& data,
00096       DtPhvps* parameters,
00097       DtParameterHandle parameterHandle);
00098 
00100    virtual void decodeFederateName(
00101       DtMomInteraction* data,
00102       const DtPhvps& parameters,
00103       int index);
00104 
00106    virtual void decodeTimeStamp(
00107       DtMomInteraction* data,
00108       const DtPhvps& parameters,
00109       int index);
00110    
00112    virtual void decodeFaultDescription(
00113       DtMomInteraction* data,
00114       const DtPhvps& parameters,
00115       int index);
00116    
00117 public:
00118    static const char* theInteractionName;
00119 
00120 protected:
00122    std::wstring myFederateName;
00123    std::auto_ptr < rti1516e::LogicalTime > myTimeStamp;
00124    std::wstring myFaultDescription;
00125 
00126    const char *FEDERATE_NAME_PARAMETER_NAME;
00127    const char *TIME_STAMP_PARAMETER_NAME;
00128    const char *FAULT_DESCRIPTION_PARAMETER_NAME;
00129 };
00130 
00131 #endif //! DtIFSPEC1516E
00132 #endif //! DtMOM
00133 #endif //! DtReportFederateLostInteraction_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)