VR-Link API Documentation for HLA 1.3
stopPdu.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00008 
00009 #ifndef DtStopPdu_H_
00010 #define DtStopPdu_H_
00011 
00012 #if DtDIS
00013 
00014 #include <vlpi/disEnums.h>
00015 #include "hostStructs.h"
00016 #include "simanPdu.h"
00017 
00018 class DT_DLL_VL DtExerciseConn;
00019 class DT_DLL_VL DtStopFreezePdu;
00020 typedef DtStopFreezePdu DtStopFreezeInteraction;
00021 
00023 typedef void (*DtStopFreezePduCb)(DtStopFreezePdu *pdu, void *usr);
00024 
00028 class DT_DLL_VL DtStopFreezePdu : public DtSimanPdu
00029 {
00030 public:
00031 
00032    enum { PduStaticSize=40 };
00033 
00034 public:
00036    DtStopFreezePdu(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00037    DtStopFreezePdu(const DtNetStopFreezePdu *initial, 
00038                    DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00039 
00040    DtStopFreezePdu(const DtEntityIdentifier &to, 
00041                    const DtEntityIdentifier &from, 
00042                    const DtTime realTime, 
00043                    DtStopReason reason, 
00044                    DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00045 
00046 
00047 
00049    DtTime realWorldTime() const;
00050    void setRealWorldTime(const DtTime time);
00051 
00053    DtStopReason reason() const; 
00054    void setReason(DtStopReason reason);
00055 
00057    int frozenBehavior() const;
00058    void setFrozenBehavior(int behavior);
00059 
00061    int requestId() const;
00062    void setRequestId(int id);
00063 
00065    virtual void printData() const;
00066 
00068    virtual void printDataToStream(std::ostream& stream) const;
00069 
00070 public:
00073    static DtPdu *create(const DtNetPacket *initial, 
00074                         DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);    
00075 
00078    static void addCallback(DtExerciseConn *conn, 
00079                            DtStopFreezePduCb cb, void *usr);
00080    static void removeCallback(DtExerciseConn *conn, 
00081                               DtStopFreezePduCb cb, void *usr);
00082 
00083 protected:
00085    DtPduKind internalGetPduKind() const {return DtStopFreezePduKind;}
00086 
00087 };
00088 
00089 #endif
00090 #endif
00091 

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)