VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simOperationsInProgressManager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2023 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
10 
11 #include <tbb/spin_rw_mutex.h>
12 
13 class DtSimMessage;
14 
18 {
19 public:
22 
25 
26  virtual void setOperationInProgress(DtIfSimOperationsInProgress::Operation operation, bool) override;
27  virtual bool operationInProgress(DtIfSimOperationsInProgress::Operation operation) const override;
28  virtual void clearOperationsInProgress() override;
29  virtual int addObjectInFlux(const DtUUID& moving, const DtVector& movingTo, int replace = -1);
30  virtual int addObjectInFlux(const DtString& markingText, int force, const DtEntityType& type, const DtVector& creatingAt, int replace = -1);
31  virtual bool removeObjectInFlux(int);
32 
33  virtual void updateSimOperationsOnNet();
34 
35 protected:
37  static void simOperationsInProgressRequestCallback(DtSimMessage*, void* usr);
38 
39 protected:
40  typedef std::map<int, int> OperationsInProgressCount;
42 
45 
46  mutable tbb::spin_rw_mutex myMutex;
47 };
UUID is a unique ID wrapper class.
Definition: uuid.h:59
DtSimulationServices * mySimulationServices
Definition: simOperationsInProgressManager.h:44
virtual bool operationInProgress(DtIfSimOperationsInProgress::Operation operation) const =0
tbb::spin_rw_mutex myMutex
Definition: simOperationsInProgressManager.h:46
virtual int addObjectInFlux(const DtUUID &moving, const DtVector &movingTo, int replace=-1)=0
Abstract interface to keep track of sim operations that are going on that can be reported to front-en...
Definition: simOperationsInProgressInterface.h:15
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
File: simMsg.h.
Definition: simMessage.h:35
Operation
Definition: ifSimOperationsInProgress.h:34
DtIfSimOperationsInProgress mySimOperations
Definition: simOperationsInProgressManager.h:43
virtual void clearOperationsInProgress()=0
The DtSimOperationsInProgressManager can be used to keep track (by count) of sim services in operatio...
Definition: simOperationsInProgressManager.h:17
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:94
virtual void setOperationInProgress(DtIfSimOperationsInProgress::Operation operation, bool)=0
std::map< int, int > OperationsInProgressCount
Definition: simOperationsInProgressManager.h:40
virtual bool removeObjectInFlux(int)=0
Bit flags which will contain a particular sim operation in progress that the GUI can use to display i...
Definition: ifSimOperationsInProgress.h:20
OperationsInProgressCount myOperationsInProgressCount
Definition: simOperationsInProgressManager.h:41

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)