VR-Link API Documentation for HLA Evolved
ackPdu.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 #ifndef DtAcknowledgePdu_H_
00007 #define DtAcknowledgePdu_H_
00008 
00012 
00013 #if DtDIS
00014 
00015 #include "hostStructs.h"
00016 #include "simanPdu.h"
00017 
00018 class DT_DLL_VL DtExerciseConn;
00019 class DT_DLL_VL DtAcknowledgePdu;
00020 typedef DtAcknowledgePdu DtAcknowledgeInteraction;
00021 
00023 typedef void (*DtAcknowledgeInteractionCb)
00024    (DtAcknowledgeInteraction *pdu, void *usr);
00025 
00031 class DT_DLL_VL DtAcknowledgePdu : public DtSimanPdu
00032 {
00033 public:
00034 
00035    enum { PduStaticSize = 32 };
00036 
00037 public:
00038 
00039 
00041    DtAcknowledgePdu(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00042    DtAcknowledgePdu(const DtNetAcknowledgePdu *initial, 
00043                     DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00044 
00045    DtAcknowledgePdu(const DtEntityIdentifier &to, 
00046                     const DtEntityIdentifier &from, 
00047                     DtAcknowledgeFlag aFlag, 
00048                     DtResponseFlag rFlag, 
00049                     DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00050 
00051 
00053    DtAcknowledgeFlag acknowledgeFlag() const;
00054    void setAcknowledgeFlag(DtAcknowledgeFlag flag);
00055 
00057    DtResponseFlag responseFlag() const;
00058    void setResponseFlag(DtResponseFlag flag);
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:
00071 
00074    static DtPdu *create(const DtNetPacket *initial, 
00075                         DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);   
00076 
00079    static void addCallback(DtExerciseConn *conn, 
00080                            DtAcknowledgeInteractionCb cb, void *usr);
00081    static void removeCallback(DtExerciseConn *conn, 
00082                               DtAcknowledgeInteractionCb cb, void *usr);
00083 
00084 protected:
00086    DtPduKind internalGetPduKind() const {return DtAcknowledgePduKind;}
00087 
00088 };
00089 
00090 #endif
00091 #endif
00092 

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)