VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
dataGate.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 
9 #include <tbb/mutex.h>
10 
11 #include <boost/signals2.hpp>
12 
13 namespace makVrf
14 {
19  {
20  public:
23  DtGateLock();
24 
25  virtual ~DtGateLock();
26 
29  bool wait(std::chrono::milliseconds timeout);
30 
32  void allowAdvance();
33 
35  void disallowAdvance();
36 
38  bool lock(double timeout = -1);
39  void unlock();
40 
41  static boost::signals2::signal<void ()> signal_gateLocked;
42  static boost::signals2::signal<void ()> signal_gateUnlocked;
43 
44  protected:
45  tbb::mutex::scoped_lock myLock;
46  bool myLocked = false;
47  };
48 }
static boost::signals2::signal< void()> signal_gateLocked
Definition: dataGate.h:41
tbb::mutex::scoped_lock myLock
Definition: dataGate.h:45
static boost::signals2::signal< void()> signal_gateUnlocked
Definition: dataGate.h:42
If you need access to data in the main thread outside of the advance frame, use this lock (with the l...
Definition: dataGate.h:18
#define DT_DLL_vrfStateData
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfStateDataDefines.h:26

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)