VR-Exchange 2.1 API Documentation
pDetonationInter.h
Go to the documentation of this file.
1 /*********************************************************************
2  ** Copyright (c) 1992-2010 VT MAK
3  ** All rights reserved.
4  *********************************************************************/
5 
6 #ifndef pDetonationInter_H_
7 #define pDetonationInter_H_
8 
12 
13 
15 #include <vlutil/vlString.h>
16 #include <vlutil/vlNetTypes.h>
17 #include <matrix/vlVector.h>
18 #include <vlpi/articulatedPartCollection.h>
19 
20 namespace MAKVrExchange {
21 
22 class DtPortalConnection;
23 
26 //
30 {
31 public:
32 
33  typedef void (*DtPortalDetonationInteractionCb)
34  (const DtPortalDetonationInteraction &inter, void *usr);
35 
36 public:
37 
40 
43 
46 
48  //
49  DtDEC_ATTRIBUTE(DtString, AttackerId, attackerId);
50 
52  DtDEC_ATTRIBUTE(DtString, TargetId, targetId);
53 
55  DtDEC_ATTRIBUTE(DtString, MunitionId, munitionId );
56 
58  //
61  DtDEC_ATTRIBUTE(DtString, MunitionType, munitionType);
62 
64  DtDEC_ATTRIBUTE(DtString, EventId, eventId );
65 
67  DtDEC_ATTRIBUTE(DtVector, Velocity, velocity);
68 
70  DtDEC_ATTRIBUTE(DtVector, WorldLocation, worldLocation);
71 
74  DtDEC_ATTRIBUTE(DtVector, EntityLocation, entityLocation);
75 
77  DtDEC_ATTRIBUTE(DtU32, Result, result );
78 
80  DtDEC_ATTRIBUTE(DtU32, FuseType, fuseType );
81 
83  //
85  DtDEC_ATTRIBUTE(DtU32, Quantity, quantity );
86 
88  DtDEC_ATTRIBUTE(DtU32, Rate, rate);
89 
91  DtDEC_ATTRIBUTE(DtU32, WarheadType, warheadType );
92 
94  DtDEC_ATTRIBUTE(DtArticulatedPartCollection, ArticulatedPartList, articulatedPartList);
95 
97 
98 public:
99 
100  virtual DtPortalMessageKind kind() const;
101  virtual const char * interactionKindName() const { return "Detonation"; }
102  virtual unsigned int netSize() const;
103  virtual void writeSelfToBuffer(void *buffer) const ;
104  virtual void readSelfFromBuffer(const void *buffer);
105  virtual std::ostream &printDataToStream(std::ostream &str) const;
106 
107 
108 
109 public:
110 
112 
113  static DtPortalMessage *create();
114 
115  static void addCallback(DtPortalConnection *conn,
116  DtPortalDetonationInteractionCb cb, void *usr);
117  static void removeCallback(DtPortalConnection *conn,
118  DtPortalDetonationInteractionCb cb, void *usr);
119 
120 };
121 }
122 
123 #endif //end #ifndef pDetonationInter_H_

Document ID: Generated on Tue Aug 7 22:07:13 EDT 2012 from SVN revision 117874
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)