MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vlThreadSafeQueue.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2005 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: vlThreadSafeQueue.h,v $ $Revision: 1.3 $ $State: Exp $
7 *******************************************************************************/
8 
11 
12 #ifndef DtThreadSafeQueue_H_
13 #define DtThreadSafeQueue_H_
14 
15 #include "internalTypes.h"
16 #include <vlutil/vlMutex.h>
17 #include <deque>
18 #include <memory>
19 
28 template < class T >
30 {
31 public:
32 
35 
37  virtual ~DtThreadSafeQueue();
38 
40  virtual inline void push_back(DtUniquePtr<T> elem );
41 
43  virtual inline void push_front(DtUniquePtr<T> elem );
44 
47  virtual inline DtUniquePtr<T> pop();
48 
49  virtual inline size_t size() const;
50 
51 protected:
52 
54 
55  std::deque< T* > myQueue;
56 
58  mutable MAKRti::DtMutex myLock;
59 
60 };
61 
63 #define DtThreadSafeQueue_Inl_
64 #include "vlThreadSafeQueue.inl"
65 #undef DtThreadSafeQueue_Inl_
66 
67 #endif
Very simple wrapper that provides thread-safe access to a basic queue pointers.
Definition: vlThreadSafeQueue.h:29
virtual DtUniquePtr< T > pop()
Pop an element from the front of the queue Returns 0 if queue is empty.
virtual size_t size() const
virtual ~DtThreadSafeQueue()
Dtor.
The declaration of internal types.
DtThreadSafeQueue()
Ctor.
std::deque< T * > myQueue
Data Members.
Definition: vlThreadSafeQueue.h:55
virtual void push_back(DtUniquePtr< T > elem)
Push an element onto the back of the queue.
virtual void push_front(DtUniquePtr< T > elem)
Push an element onto the front of the queue.
MAKRti::DtMutex myLock
Lock for critical section access.
Definition: vlThreadSafeQueue.h:58

Document ID: Generated on Sun Jul 20 16:15:30 EDT 2025 from SVN revision 277985
Copyright © 2005-2025 MAK Technologies Inc. All Rights Reserved (www.mak.com)