MAK RTIspy API Documentation for HLA 1516
timeInfo.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1998 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: timeInfo.h,v $ $Revision: 1.3 $ $State: Exp $
00007 *********************************************************************/
00008 
00011 
00012 #ifndef DtTimeInfo_H_
00013 #define DtTimeInfo_H_
00014 
00015 #ifdef DtTIME
00016 
00017 #include <vlutil/vlMachineTypes.h>
00018 #include "internalTypes.h"
00019 #include "fedTimeFactory.h"
00020 
00021 class DT_DLL_EXEC DtTimeInfo
00022 {
00023 public:
00025 #ifdef DtIFSPEC1516
00026    DtTimeInfo(DtFederateHandle fedHandleVal,
00027       rti1516::LogicalTime const & timeVal,
00028       rti1516::LogicalTimeInterval const & lookaheadVal,
00029       DtLogicalTimeFactory* timeFactory);
00030 #elif defined(DtIFSPEC1516E)
00031     DtTimeInfo(DtFederateHandle fedHandleVal,
00032         rti1516e::LogicalTime const & timeVal,
00033         rti1516e::LogicalTimeInterval const & lookaheadVal,
00034         DtLogicalTimeFactory* timeFactory);
00035 #else
00036    DtTimeInfo(DtFederateHandle fedHandleVal,
00037       RTI::FedTime const & timeVal,
00038       RTI::FedTime const & lookaheadVal,
00039       DtLogicalTimeFactory* timeFactory);
00040 #endif
00041 
00043    virtual ~DtTimeInfo();
00044 
00046    DtTimeInfo(const DtTimeInfo& orig);
00047 
00049    DtTimeInfo& operator=(DtTimeInfo const& orig);
00050 
00052    virtual void setFederateHandle(DtFederateHandle fedHandleVal);
00053    virtual DtFederateHandle federateHandle() const;
00054 
00056 #ifdef DtIFSPEC1516
00057    virtual void setTime(rti1516::LogicalTime const & timeVal);
00058    virtual rti1516::LogicalTime const & time() const;
00059 #elif defined(DtIFSPEC1516E)
00060    virtual void setTime(rti1516e::LogicalTime const & timeVal);
00061    virtual rti1516e::LogicalTime const & time() const;
00062 #else
00063    virtual void setTime(RTI::FedTime const & timeVal);
00064    virtual RTI::FedTime const & time() const;
00065 #endif
00066 
00068 #ifdef DtIFSPEC1516
00069    virtual void setLookahead(rti1516::LogicalTimeInterval const & lookaheadVal);
00070    virtual rti1516::LogicalTimeInterval const & lookahead() const;
00071 #elif defined(DtIFSPEC1516E)
00072    virtual void setLookahead(rti1516e::LogicalTimeInterval const & lookaheadVal);
00073    virtual rti1516e::LogicalTimeInterval const & lookahead() const;
00074 #else
00075    virtual void setLookahead(RTI::FedTime const & lookaheadVal);
00076    virtual RTI::FedTime const & lookahead() const;
00077 #endif
00078 
00080 #ifdef DtIFSPEC1516
00081    virtual rti1516::LogicalTime const & lbts() const;
00082 #elif defined(DtIFSPEC1516E)
00083    virtual rti1516e::LogicalTime const & lbts() const;
00084 #else
00085    virtual RTI::FedTime const & lbts() const;
00086 #endif
00087 
00089    virtual void setIsConstrained(bool fedIsConstrained);
00090    virtual bool isConstrained() const;
00091 
00093    virtual void setIsRegulating(bool fedIsRegulating);
00094    virtual bool isRegulating() const;
00095 
00098    virtual void setIsTimeAvailable(bool isAvailable);
00099    virtual bool isTimeAvailable() const;
00100 
00103    virtual void setIsNerPending(bool isPending);
00104    virtual bool isNerPending() const;
00105 
00107 #ifdef DtIFSPEC1516
00108    virtual void setNerTime(rti1516::LogicalTime const & timeVal);
00109    virtual rti1516::LogicalTime const & nerTime() const;
00110 #elif defined(DtIFSPEC1516E)
00111    virtual void setNerTime(rti1516e::LogicalTime const & timeVal);
00112    virtual rti1516e::LogicalTime const & nerTime() const;
00113 #else
00114    virtual void setNerTime(RTI::FedTime const & timeVal);
00115    virtual RTI::FedTime const & nerTime() const;
00116 #endif
00117 
00119 #ifdef DtIFSPEC1516
00120    virtual void setNerLookahead(
00121       rti1516::LogicalTimeInterval const & lookaheadVal);
00122    virtual rti1516::LogicalTimeInterval const & nerLookahead() const;
00123 #elif defined(DtIFSPEC1516E)
00124    virtual void setNerLookahead(
00125        rti1516e::LogicalTimeInterval const & lookaheadVal);
00126    virtual rti1516e::LogicalTimeInterval const & nerLookahead() const;
00127 #else
00128    virtual void setNerLookahead(RTI::FedTime const & lookaheadVal);
00129    virtual RTI::FedTime const & nerLookahead() const;
00130 #endif
00131 
00133 #ifdef DtIFSPEC1516
00134    virtual rti1516::LogicalTime const & nerLbts() const;
00135 #elif defined(DtIFSPEC1516E)
00136    virtual rti1516e::LogicalTime const & nerLbts() const;
00137 #else
00138    virtual RTI::FedTime const & nerLbts() const;
00139 #endif
00140 
00142    virtual void printData();
00143 
00144 protected:
00145 
00146    DtLogicalTimeFactory* myLogicalTimeFactory;
00147    DtFederateHandle myFederateHandle;
00148    bool myConstrained;
00149    bool myRegulating;
00150 #ifdef DtIFSPEC1516
00151    std::auto_ptr<rti1516::LogicalTime> myTime;
00152    std::auto_ptr<rti1516::LogicalTimeInterval> myLookahead;
00153    std::auto_ptr<rti1516::LogicalTime> myLbts;
00154    bool myTimeAvailable;
00155    bool myNerPending;
00156    std::auto_ptr<rti1516::LogicalTime> myNerTime;
00157    std::auto_ptr<rti1516::LogicalTimeInterval> myNerLookahead;
00158    std::auto_ptr<rti1516::LogicalTime> myNerLbts;
00159 #elif defined(DtIFSPEC1516E)
00160    std::auto_ptr<rti1516e::LogicalTime> myTime;
00161    std::auto_ptr<rti1516e::LogicalTimeInterval> myLookahead;
00162    std::auto_ptr<rti1516e::LogicalTime> myLbts;
00163    bool myTimeAvailable;
00164    bool myNerPending;
00165    std::auto_ptr<rti1516e::LogicalTime> myNerTime;
00166    std::auto_ptr<rti1516e::LogicalTimeInterval> myNerLookahead;
00167    std::auto_ptr<rti1516e::LogicalTime> myNerLbts;
00168 #else
00169    std::auto_ptr<RTI::FedTime> myTime;
00170    std::auto_ptr<RTI::FedTime> myLookahead;
00171    std::auto_ptr<RTI::FedTime> myLbts;
00172    bool myTimeAvailable;
00173    bool myNerPending;
00174    std::auto_ptr<RTI::FedTime> myNerTime;
00175    std::auto_ptr<RTI::FedTime> myNerLookahead;
00176    std::auto_ptr<RTI::FedTime> myNerLbts;
00177 #endif
00178 };
00179 
00180 #endif //! DtTIME
00181 #endif //! DtTimeInfo_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)