25 #include <boost/unordered_map.hpp>
30 class DtAttachableUpdaterAgent;
31 class DtSimObjectEntry;
37 class DtNetworkMessageInterface;
38 class DtAttackLineAttachableUpdaterAgent;
39 class DtVrfStateViewCollectionManager;
40 class DtVrfSimBackendManager;
41 class DtLineFacadeBase;
56 virtual void setWedgeSize(
double);
59 DtAttackLineAttachableUpdaterAgent*
updater()
66 DtAttackLineAttachableUpdaterAgent* myUpdater;
78 virtual void setColor(
float r,
float g,
float b,
float a);
79 virtual void setVisible(
bool);
85 DtAttackLineAttachableUpdaterAgent*
updater;
108 virtual void setDisplayAttackLines(
bool);
109 virtual bool displayAttackLines()
const;
112 virtual void setDisplayAttackAnimation(
bool);
113 virtual bool displayAttackAnimation()
const;
116 virtual void setDisplaySupplyLines(
bool);
117 virtual bool displaySupplyLines()
const;
121 virtual int animationColor(
int baseColor)
const;
130 virtual void setSupplyLineColor(
int r,
int g,
int b,
int a);
131 virtual void getSupplyLineColor(
int& r,
int& g,
int& b,
int& a);
135 virtual void setAnimationLength(
double);
142 virtual void setWedgeSize(
double);
143 virtual double wedgeSize()
const;
145 typedef std::map<makVrv::DtModelSetId, DtAttackLine*>
AttackLines;
146 typedef std::map<std::string, DtInfluenceInteractionInterface>
AttackTypes;
170 typedef std::map<makVrv::DtElementID, Supplying>
Suppliers;
172 typedef std::map<makVrv::DtElementID, AttackLineInformation>
AttackTarget;
173 typedef std::map<makVrv::DtElementID, AttackTarget>
Attacks;
183 virtual void clear();
186 virtual void setMinimumInfluenceDuration(
double);
187 virtual double minimumInfluenceDuration()
const;
195 boost::signals2::signal<void (makVrv::DtElementID, makVrv::DtElementID, std::string)>
signal_attackAdded;
219 const std::string& attackType);
221 virtual void slot_extendedEntityOptionsChanged();
229 virtual void slot_removeExpiredAttacks();
230 virtual void slot_removeExpiredSupplies();
253 typedef std::map<makVrv::DtElementID, UnderAttackInformation>
UnderAttack;
268 typedef std::map<makVrv::DtElementID, SceneObjectInformation>
SceneObjects;
274 typedef std::map<makVrv::DtElementID, DtSupplyLine*>
SupplyLine;
286 float mySupplyLineColor[4];
std::map< makVrv::DtElementID, UnderAttackInformation > UnderAttack
Definition: influenceManager.h:253
UUID is a unique ID wrapper class.
Definition: uuid.h:59
std::set< makVrv::DtElementID > Supplying
Definition: influenceManager.h:169
boost::unordered_map< DtUUID, DtInfluenceInteractionInterface * > PendingInfluenceInteractions
Definition: influenceManager.h:290
makVrv::DtElementID attackerId
Definition: influenceManager.h:157
Contains DtLineFacadeBase class. Facade interface for constructing line objects.
Definition: lineFacadeBase.h:32
std::map< makVrv::DtElementID, SceneObjectInformation > SceneObjects
Definition: influenceManager.h:268
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
boost::signals2::signal< void(makVrv::DtElementID, makVrv::DtElementID)> signal_supplyRemoved
Definition: influenceManager.h:199
Definition: networkMessageInterface.h:28
SupplyExpirations mySupplyExpirations
Definition: influenceManager.h:284
double myAnimationLength
Definition: influenceManager.h:257
makVrv::DtDe & myDe
Definition: influenceManager.h:238
AttackExpirations myAttackExpirations
Definition: influenceManager.h:244
This class will be used to receive influence interactions and create or manage objects that will repr...
Definition: influenceManager.h:95
makVrv::DtElementID targetId
Definition: influenceManager.h:158
UnderAttack myUnderAttack
Definition: influenceManager.h:254
std::map< makVrv::DtElementID, Supplying > Suppliers
Definition: influenceManager.h:170
SupplyLines mySupplyLines
Definition: influenceManager.h:89
std::map< makVrv::DtModelSetId, Supply > SupplyLines
Definition: influenceManager.h:88
std::map< makVrv::DtElementID, DtSupplyLine * > SupplyLine
Definition: influenceManager.h:274
makVrv::DtDe & myDe
Definition: influenceManager.h:90
Contains the DtUUID class declaration.
std::map< makVrv::DtElementID, SupplierExpiration > SupplyExpirations
Definition: influenceManager.h:283
bool myDisplayAttackAnimation
Definition: influenceManager.h:240
makVrf::DtLineFacadeBase * supplyLine
Definition: influenceManager.h:84
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
std::map< makVrv::DtElementID, SupplyLine > SupplyLines
Definition: influenceManager.h:275
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:23
Contains Dt2DAreaFacade class. Facade interface for constructing 2D area objects. ...
Definition: 2DAreaFacade.h:20
boost::signals2::signal< void(makVrv::DtElementID, makVrv::DtElementID, std::string)> signal_attackAdded
Definition: influenceManager.h:195
double myMinimumInfluenceDuration
Definition: influenceManager.h:272
std::map< makVrv::DtModelSetId, DtAttackLine * > AttackLines
Definition: influenceManager.h:145
std::string attackType
Definition: influenceManager.h:159
boost::signals2::signal< void(makVrv::DtElementID, makVrv::DtElementID)> signal_supplyAdded
Definition: influenceManager.h:198
bool myDisplaySupplyLines
Definition: influenceManager.h:288
Suppliers mySuppliers
Definition: influenceManager.h:279
boost::signals2::signal< void(makVrv::DtElementID, makVrv::DtElementID, std::string)> signal_attackRemoved
Definition: influenceManager.h:196
Contains makVrv::DtVirtualBaseClass class.
A DtSimObjectEntry is an entry for a persistent simulation object like an entity. ...
Definition: DtSimObjectEntry.h:22
std::map< makVrv::DtElementID, AttackLineInformation > AttackTarget
Definition: influenceManager.h:172
bool myDisplayAttackLines
Definition: influenceManager.h:239
Attacks myAttacks
Definition: influenceManager.h:242
This class will display a 2D representation of the attack line. The attack line is a wedge that is dr...
Definition: influenceManager.h:46
Definition: influenceManager.h:82
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
SceneObjects mySceneObjects
Definition: influenceManager.h:269
Contains makVrv::DtVrlinkSimulatedEntityState class.
Creates the supply line and updated from source to target.
Definition: influenceManager.h:72
This class is the central point for looking up information about a particular object in the VRF GUI...
Definition: vrfStateViewCollectionManager.h:143
std::map< AttackIdentifier, double > AttackExpirations
Definition: influenceManager.h:174
DtAttackLineAttachableUpdaterAgent * updater()
Updater for this line. Use to change margin, etc.
Definition: influenceManager.h:59
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
PendingInfluenceInteractions myPendingInfluenceInteractions
Definition: influenceManager.h:291
Base class to provide boost signal/slot management.
DtVrfStateViewCollectionManager & myCollectionManager
Definition: influenceManager.h:259
DtVrfSimBackendManager * myBackendManager
Definition: influenceManager.h:260
std::map< makVrv::DtElementID, double > SupplierExpiration
Definition: influenceManager.h:282
Suppliers mySupplied
Definition: influenceManager.h:280
Definition: influenceManager.h:155
double myWedgeSize
Definition: influenceManager.h:67
Maintains and signals state of the simulation engines that are currently connected to the GUI...
Definition: vrfSimBackendManager.h:79
A DtSceneObject represents an object that can be positioned in the scene by (possibly) attaching it t...
Definition: DtSceneObject.h:44
bool operator<(const AttackIdentifier &rhs) const
Definition: influenceManager.h:161
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
double myWedgeSize
Definition: influenceManager.h:271
std::map< std::string, DtInfluenceInteractionInterface > AttackTypes
Definition: influenceManager.h:146
makVrv::DtSignalConnectionManager myConnectionManager
Definition: influenceManager.h:246
DtModelSetId
Definition: DtModelSetEnums.h:19
SupplyLines mySupplyLines
Definition: influenceManager.h:277
DtAttackLineAttachableUpdaterAgent * updater
Definition: influenceManager.h:85
makVrv::DtDe & myDe
Definition: influenceManager.h:68
double myAnimationStart
Definition: influenceManager.h:256
Definition: influenceInteractionInterface.h:23
std::map< makVrv::DtElementID, AttackTarget > Attacks
Definition: influenceManager.h:173