VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtTemporaryAgentManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #ifndef DtTemporaryEffectsManager_H_
11 #define DtTemporaryEffectsManager_H_
12 
13 #include <vrvCore/vrvCore.h>
14 
15 #include <list>
16 #include <vrvUtil/signalslib.h>
17 
18 #include <matrix/vlVector.h>
19 
20 namespace makVrv
21 {
22 
23  class DtAgent;
24  class DtAgentManagerInterface;
25 
33  {
34  public:
35 
37  DtTemporaryAgentManager(double currentTime);
38 
40  virtual ~DtTemporaryAgentManager();
41 
48  virtual void takeAgent(DtAgent* agent, double lifeTime,
49  double deleteDelay = 0.0);
50 
52  void clearAll();
53 
55  virtual void tick(double currentTime);
56 
58  boost::signalslib::signal<void (DtAgent*)> signal_agentTimedOut;
59 
60  protected:
62  {
64  double timeToDelete;
65  };
66 
67  typedef std::list<AgentParameters> AgentCollection;
68  typedef AgentCollection::iterator iterator;
69  typedef AgentCollection::const_iterator const_iterator;
70 
71  inline iterator begin() { return myAgents.begin(); }
72  inline const_iterator begin() const { return myAgents.begin(); }
73 
74  inline iterator end() { return myAgents.end(); }
75  inline const_iterator end() const { return myAgents.end(); }
76 
78  double myLastTime;
79  };
80 }
81 
82 #endif
83 
double myLastTime
Definition: DtTemporaryAgentManager.h:78
AgentCollection::iterator iterator
Definition: DtTemporaryAgentManager.h:68
A distributed object agent base class.
Definition: DtAgent.h:54
boost::signalslib::signal< void(DtAgent *)> signal_agentTimedOut
Emitted when a temporary agent times out.
Definition: DtTemporaryAgentManager.h:58
std::list< AgentParameters > AgentCollection
Definition: DtTemporaryAgentManager.h:67
AgentCollection::const_iterator const_iterator
Definition: DtTemporaryAgentManager.h:69
iterator end()
Definition: DtTemporaryAgentManager.h:74
The temporary agent manager.
Definition: DtTemporaryAgentManager.h:32
DtAgent * agent
Definition: DtTemporaryAgentManager.h:63
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
iterator begin()
Definition: DtTemporaryAgentManager.h:71
AgentCollection myAgents
Definition: DtTemporaryAgentManager.h:77
const_iterator begin() const
Definition: DtTemporaryAgentManager.h:72
double timeToDelete
Definition: DtTemporaryAgentManager.h:64
const_iterator end() const
Definition: DtTemporaryAgentManager.h:75
Definition: DtTemporaryAgentManager.h:61
Contains DLL export macros.

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)