VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
scheduler.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1999 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
8 #include <vlutil/vlList.h>
9 #include <vrfutil/simClock.h>
10 #include <tbb/spin_mutex.h>
11 
12 class DtTimer;
13 class DtSimManager;
14 
23 #include "vrfcore/vrfcoreDefines.h"
24 
25 class DT_DLL_vrfcore DtScheduler : public DtIntrusiveList
26 {
27 public:
28 
31  DtScheduler();
32  DtScheduler(DtSimManager * simManager);
33 
35  DtScheduler(const DtScheduler& orig);
36 
38  DtScheduler& operator=(const DtScheduler& orig);
39 
41  virtual ~DtScheduler();
42 
50  virtual void tick();
51 
54 
58  virtual void addTimer(DtTimer *timer);
59 
62  virtual void removeTimer (DtTimer *timer);
63 
66  virtual void reset(bool clearAll = false);
67 
70  void reSort(DtTimer *timer);
71 
72 protected:
73 
75  void doPendingResorts();
76 
79  void moveToEnd(DtTimer *timer);
80 
84  bool myInTick;
85 
87  tbb::spin_mutex myMutex;
88 };
class DtScheduler
Definition: scheduler.h:25
Instances of DtTimer are used to maintain the information needed to represent some kind of scheduled ...
Definition: timer.h:45
tbb::spin_mutex myMutex
Definition: scheduler.h:87
bool myInTick
If in tick, ReSort() does NOT resort.
Definition: scheduler.h:84
DtSimManager * mySimManager
Definition: scheduler.h:86
File: vlClock.h.
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:103
#define DT_DLL_vrfcore
This file is used to determine how to build.
Definition: vrfcoreDefines.h:25

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)