26 #include <boost/unordered_map.hpp>
31 class DtAttachableUpdaterAgent;
32 class DtSimObjectEntry;
33 class DtLineFacadeBase;
39 class DtNetworkMessageInterface;
40 class DtAttackLineAttachableUpdaterAgent;
41 class DtVrfStateViewCollectionManager;
42 class DtVrfSimBackendManager;
57 virtual void setWedgeSize(
double);
60 DtAttackLineAttachableUpdaterAgent*
updater()
67 DtAttackLineAttachableUpdaterAgent* myUpdater;
79 virtual void setColor(
float r,
float g,
float b,
float a);
80 virtual void setVisible(
bool);
86 DtAttackLineAttachableUpdaterAgent*
updater;
109 virtual void setDisplayAttackLines(
bool);
110 virtual bool displayAttackLines()
const;
113 virtual void setDisplayAttackAnimation(
bool);
114 virtual bool displayAttackAnimation()
const;
117 virtual void setDisplaySupplyLines(
bool);
118 virtual bool displaySupplyLines()
const;
122 virtual int animationColor(
int baseColor)
const;
131 virtual void setSupplyLineColor(
int r,
int g,
int b,
int a);
132 virtual void getSupplyLineColor(
int& r,
int& g,
int& b,
int& a);
136 virtual void setAnimationLength(
double);
143 virtual void setWedgeSize(
double);
144 virtual double wedgeSize()
const;
147 typedef std::map<std::string, DtInfluenceInteractionInterface>
AttackTypes;
171 typedef std::map<makVrv::DtElementID, Supplying>
Suppliers;
173 typedef std::map<makVrv::DtElementID, AttackLineInformation>
AttackTarget;
174 typedef std::map<makVrv::DtElementID, AttackTarget>
Attacks;
184 virtual void clear();
187 virtual void setMinimumInfluenceDuration(
double);
188 virtual double minimumInfluenceDuration()
const;
196 boost::signals2::signal<void (makVrv::DtElementID, makVrv::DtElementID, std::string)>
signal_attackAdded;
220 const std::string& attackType);
222 virtual void slot_extendedEntityOptionsChanged();
230 virtual void slot_removeExpiredAttacks();
231 virtual void slot_removeExpiredSupplies();
254 typedef std::map<makVrv::DtElementID, UnderAttackInformation>
UnderAttack;
269 typedef std::map<makVrv::DtElementID, SceneObjectInformation>
SceneObjects;
275 typedef std::map<makVrv::DtElementID, DtSupplyLine*>
SupplyLine;
287 float mySupplyLineColor[4];
std::map< makVrv::DtElementID, UnderAttackInformation > UnderAttack
Definition: influenceManager.h:254
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
std::set< makVrv::DtElementID > Supplying
Definition: influenceManager.h:170
boost::unordered_map< DtUUID, DtInfluenceInteractionInterface * > PendingInfluenceInteractions
Definition: influenceManager.h:291
makVrv::DtElementID attackerId
Definition: influenceManager.h:158
std::map< makVrv::DtElementID, SceneObjectInformation > SceneObjects
Definition: influenceManager.h:269
makVrv::DtLineFacadeBase * supplyLine
Definition: influenceManager.h:85
Virtual base class.
Definition: DtVirtualBaseClass.h:22
boost::signals2::signal< void(makVrv::DtElementID, makVrv::DtElementID)> signal_supplyRemoved
Definition: influenceManager.h:200
Definition: networkMessageInterface.h:28
SupplyExpirations mySupplyExpirations
Definition: influenceManager.h:285
double myAnimationLength
Definition: influenceManager.h:258
makVrv::DtDe & myDe
Definition: influenceManager.h:239
AttackExpirations myAttackExpirations
Definition: influenceManager.h:245
This class will be used to receive influence interactions and create or manage objects that will repr...
Definition: influenceManager.h:96
makVrv::DtElementID targetId
Definition: influenceManager.h:159
UnderAttack myUnderAttack
Definition: influenceManager.h:255
std::map< makVrv::DtElementID, Supplying > Suppliers
Definition: influenceManager.h:171
SupplyLines mySupplyLines
Definition: influenceManager.h:90
std::map< makVrv::DtElementID, DtSupplyLine * > SupplyLine
Definition: influenceManager.h:275
makVrv::DtDe & myDe
Definition: influenceManager.h:91
std::map< makVrv::DtElementID, SupplierExpiration > SupplyExpirations
Definition: influenceManager.h:284
bool myDisplayAttackAnimation
Definition: influenceManager.h:241
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
std::map< makVrv::DtElementID, SupplyLine > SupplyLines
Definition: influenceManager.h:276
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:26
boost::signals2::signal< void(makVrv::DtElementID, makVrv::DtElementID, std::string)> signal_attackAdded
Definition: influenceManager.h:196
double myMinimumInfluenceDuration
Definition: influenceManager.h:273
std::string attackType
Definition: influenceManager.h:160
boost::signals2::signal< void(makVrv::DtElementID, makVrv::DtElementID)> signal_supplyAdded
Definition: influenceManager.h:199
bool myDisplaySupplyLines
Definition: influenceManager.h:289
Suppliers mySuppliers
Definition: influenceManager.h:280
boost::signals2::signal< void(makVrv::DtElementID, makVrv::DtElementID, std::string)> signal_attackRemoved
Definition: influenceManager.h:197
Contains makVrv::DtVirtualBaseClass class.
A DtSimObjectEntry is an entry for a persistent simulation object like an entity. ...
Definition: DtSimObjectEntry.h:25
Contains DtLineFacadeBase class.
Definition: DtLineFacadeBase.h:31
std::map< makVrv::DtElementID, AttackLineInformation > AttackTarget
Definition: influenceManager.h:173
bool myDisplayAttackLines
Definition: influenceManager.h:240
Attacks myAttacks
Definition: influenceManager.h:243
This class will display a 2D representation of the attack line.
Definition: influenceManager.h:47
Definition: influenceManager.h:83
std::map< int, Supply > SupplyLines
Definition: influenceManager.h:89
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
SceneObjects mySceneObjects
Definition: influenceManager.h:270
Contains makVrv::DtEntityState class.
Creates the supply line and updated from source to target.
Definition: influenceManager.h:73
This class is the central point for looking up information about a particular object in the VRF GUI...
Definition: vrfStateViewCollectionManager.h:126
std::map< int, DtAttackLine * > AttackLines
Definition: influenceManager.h:146
std::map< AttackIdentifier, double > AttackExpirations
Definition: influenceManager.h:175
DtAttackLineAttachableUpdaterAgent * updater()
Updater for this line. Use to change margin, etc.
Definition: influenceManager.h:60
unsigned long long DtUniqueID
Definition: DtUniqueID.h:22
PendingInfluenceInteractions myPendingInfluenceInteractions
Definition: influenceManager.h:292
Base class to provide boost signal/slot management.
DtVrfStateViewCollectionManager & myCollectionManager
Definition: influenceManager.h:260
DtVrfSimBackendManager * myBackendManager
Definition: influenceManager.h:261
std::map< makVrv::DtElementID, double > SupplierExpiration
Definition: influenceManager.h:283
Suppliers mySupplied
Definition: influenceManager.h:281
Definition: influenceManager.h:156
double myWedgeSize
Definition: influenceManager.h:68
Maintains and signals state of the simulation engines that are currently connected to the GUI...
Definition: vrfSimBackendManager.h:73
A DtSceneObject represents an object that can be positioned in the scene by (possibly) attaching it t...
Definition: DtSceneObject.h:41
Contains Dt2DAreaFacade class.
Definition: Dt2DAreaFacade.h:20
bool operator<(const AttackIdentifier &rhs) const
Definition: influenceManager.h:162
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
double myWedgeSize
Definition: influenceManager.h:272
std::map< std::string, DtInfluenceInteractionInterface > AttackTypes
Definition: influenceManager.h:147
makVrv::DtSignalConnectionManager myConnectionManager
Definition: influenceManager.h:247
SupplyLines mySupplyLines
Definition: influenceManager.h:278
DtAttackLineAttachableUpdaterAgent * updater
Definition: influenceManager.h:86
makVrv::DtDe & myDe
Definition: influenceManager.h:69
double myAnimationStart
Definition: influenceManager.h:257
Definition: influenceInteractionInterface.h:23
std::map< makVrv::DtElementID, AttackTarget > Attacks
Definition: influenceManager.h:174