VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
managedObjectListManager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
10 
11 #include <tbb/spin_mutex.h>
12 
15 class DtVrfCallbackQueue;
16 class DtConsoleCommand;
17 
23 {
24 
25 protected:
28 
29 public:
32 
34  virtual ~DtManagedObjectListManager();
35 
36  virtual void init();
37 
44  DtManagedObjectListConstPtr getList(const DtVrfObjectPredicate& predicate =
46  bool reevaluateFlag = false,
47  DtTime evaluationPeriod = 0);
48 
50  DtManagedObjectListConstPtr nullList();
51 
53  virtual void printCurrentLists();
54 
56  virtual void tick(DtVrfCallbackQueue* = 0);
57 
58 protected:
62  void removeExpiredLists();
63 
64 protected:
66  typedef std::list<DtBoost::weak_ptr<DtManagedObjectList> >
68 
69  mutable tbb::spin_mutex myListsMutex;
71 
72  std::list<DtConsoleCommand*> myConsoleCommands;
73 };
std::list< DtConsoleCommand * > myConsoleCommands
Definition: managedObjectListManager.h:72
tbb::spin_mutex myListsMutex
Definition: managedObjectListManager.h:69
DtManagedObjectListStdList myLists
Definition: managedObjectListManager.h:70
Simple asynchronous callback queue.
Definition: vrfCallbackQueue.h:32
const DtSimulationServices * mySimulationServices
Definition: managedObjectListManager.h:65
Contains the DtVrfObjectPredicate class declaration.
Definition: vrfObjectPredicate.h:20
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
system includes
Definition: consoleCommandManager.h:28
std::list< DtBoost::weak_ptr< DtManagedObjectList > > DtManagedObjectListStdList
Definition: managedObjectListManager.h:67
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:90
static const DtVrfObjectPredicate & nullPredicate()
Returns an instance of a DtNullVrfObjectPredicate.
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
DtBoost::shared_ptr< const DtManagedObjectList > DtManagedObjectListConstPtr
Typedef for a shared pointer to a const DtOrgViewManagedObjectList. These lists are used within VR-Fo...
Definition: managedObjectList.h:35
Service which provides managed lists of simulation objects that are filtered based on a given predica...
Definition: managedObjectListManager.h:22
Instances of DtManagedObjectList are created and maintained by a DtManagedObjectListManager. The lists contains a subset of the objects in DtSimObjectManager that meet the specified predicate. If specified at creation time, the list automatically updates itself periodically. The lists should be handled though shared pointers.
Definition: managedObjectList.h:45

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)