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) override;
30  virtual int addObjectInFlux(const DtString& markingText, int force, const DtEntityType& type,
31  const DtVector& creatingAt, int replace = -1) override;
32  virtual bool removeObjectInFlux(int) override;
33 
34  virtual void updateSimOperationsOnNet();
35 
36 protected:
38  static void simOperationsInProgressRequestCallback(DtSimMessage*, void* usr);
39 
40 protected:
41  typedef std::map<int, int> OperationsInProgressCount;
43 
46 
47  mutable tbb::spin_rw_mutex myMutex;
48 };
UUID is a unique ID wrapper class.
Definition: uuid.h:59
DtSimulationServices * mySimulationServices
Definition: simOperationsInProgressManager.h:45
virtual bool operationInProgress(DtIfSimOperationsInProgress::Operation operation) const =0
tbb::spin_rw_mutex myMutex
Definition: simOperationsInProgressManager.h:47
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:44
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:96
virtual void setOperationInProgress(DtIfSimOperationsInProgress::Operation operation, bool)=0
std::map< int, int > OperationsInProgressCount
Definition: simOperationsInProgressManager.h:41
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:42

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)