VR-Exchange 2.4 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
fireInteraction.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2014 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #if DtTENA
11 
12 #pragma once
13 
14 #include <vlTena/interaction.h>
15 #include <vlpi/entityType.h>
16 
17 namespace MAKVrExchange
18 {
19 
20  namespace DtTenaBroker
21  {
22 
23  class DtFireInteraction;
24 
26  typedef void (*DtFireInteractionCb)(DtFireInteraction* inter, void* usr);
27 
31  class DT_DLL_VLTENA DtFireInteraction : public DtInteraction
32  {
33  public:
34 
36  DtFireInteraction();
37 
39  virtual ~DtFireInteraction();
40 
42  DtFireInteraction(const DtFireInteraction& orig);
43 
45  DtFireInteraction& operator=(const DtFireInteraction& orig);
46 
48  virtual void setAttackerId(const DtGlobalObjectDesignator& id);
49 
51  virtual const DtGlobalObjectDesignator& attackerId() const;
52 
54  virtual void setTargetId(const DtGlobalObjectDesignator& id);
55 
57  virtual const DtGlobalObjectDesignator& targetId() const;
58 
61  virtual void setLocation(const DtVector& loc);
62 
64  virtual const DtVector& location() const;
65 
68  virtual void setVelocity(const DtVector& vel);
69 
71  virtual const DtVector& velocity() const;
72 
74  virtual void setMunitionType(const DtEntityType &t);
75 
77  virtual const DtEntityType &munitionType() const;
78 
80  virtual const char* name() const;
81 
83  virtual void printData() const;
84 
86  virtual void printDataToStream(std::ostream& stream) const;
87 
88  public:
89 
92  static DtInteraction* create();
93 
96  static void addCallback(DtExerciseConn* conn,
97  DtFireInteractionCb cb, void* usr);
98 
101  static void removeCallback(DtExerciseConn* conn,
102  DtFireInteractionCb cb, void* usr);
103 
104  protected:
105 
106  DtGlobalObjectDesignator myAttackerId;
107  DtGlobalObjectDesignator myTargetId;
108  DtVector myLocation;
109  DtVector myVelocity;
110  DtEntityType myMunitionType;
111 
112  };
113 
114  }
115 }
116 
117 #endif // DtTENA

Document ID: Generated on Thu Jul 23 10:25:22 EDT 2015 from SVN revision 155065
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)