VR-Link API Documentation for HLA Evolved
pduFactory.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
6 
9 
10 #ifndef DtPduFactory_H_
11 #define DtPduFactory_H_
12 
13 #if DtDIS
14 
15 #include "pdu.h"
16 
18 typedef DtPdu* (*DtPduCreator)(const DtNetPduHeader* packet,
19  DtBufferPtr buffer);
20 
21 
25 #define DtADD_PDU_CREATOR(x) \
26  addCreator(Dt##x##PduKind, &Dt##x##Pdu::create);
27 
28 
33 
34 class DT_DLL_VL DtPduFactory
35 {
36 public:
37 
39  DtPduFactory();
40 
42  virtual ~DtPduFactory();
43 
45  DtPduFactory(const DtPduFactory& orig);
46 
48  DtPduFactory& operator=(const DtPduFactory& orig);
49 
53  virtual DtPdu* createPdu(const DtNetPacket* packet,
55 
61  virtual DtPduCreator addCreator(DtPduKind kind, DtPduCreator creator);
63 
64  virtual int packetGood(const DtNetPacket* packet) const;
65 
66 public:
67  static int dfltPacketGood(const DtNetPacket* packet);
68 
69 protected:
70 
72  DtPduCreator* myCreators;
73 
74 protected:
75 
76  static const int theMaxPduKinds;
77 };
78 
79 #endif
80 #endif
81 

Document ID: Generated on Wed Aug 14 15:35:11 EDT 2013 from SVN revision 130445
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)