Panda3D
Loading...
Searching...
No Matches
Public Member Functions | List of all members
ReMutexHolder Class Reference

Similar to MutexHolder, but for a reentrant mutex. More...

#include "reMutexHolder.h"

Public Member Functions

 ReMutexHolder (const ReMutex &mutex)
 
 ReMutexHolder (const ReMutex &mutex, Thread *current_thread)
 This variant on the constructor accepts the current thread as a parameter, if it is already known, as an optimization.
 
 ReMutexHolder (const ReMutexHolder &copy)=delete
 
 ReMutexHolder (ReMutex *&mutex)
 If the ReMutexHolder constructor is given a pointer to a ReMutex object (instead of an actual object), it will first check to see if the pointer is NULL, and allocate a new ReMutex if it is.
 
ReMutexHolderoperator= (const ReMutexHolder &copy)=delete
 

Detailed Description

Similar to MutexHolder, but for a reentrant mutex.

Definition at line 25 of file reMutexHolder.h.

Constructor & Destructor Documentation

◆ ReMutexHolder() [1/3]

ReMutexHolder::ReMutexHolder ( const ReMutex & mutex)
inline

Definition at line 17 of file reMutexHolder.I.

◆ ReMutexHolder() [2/3]

ReMutexHolder::ReMutexHolder ( const ReMutex & mutex,
Thread * current_thread )
inline

This variant on the constructor accepts the current thread as a parameter, if it is already known, as an optimization.

Definition at line 29 of file reMutexHolder.I.

References ReMutexDirect::acquire().

◆ ReMutexHolder() [3/3]

ReMutexHolder::ReMutexHolder ( ReMutex *& mutex)
inline

If the ReMutexHolder constructor is given a pointer to a ReMutex object (instead of an actual object), it will first check to see if the pointer is NULL, and allocate a new ReMutex if it is.

This is intended as a convenience for functions that may need to reference a ReMutex at static init time, when it is impossible to guarantee ordering of initializers.

Definition at line 44 of file reMutexHolder.I.

References ReMutexDirect::acquire().

◆ ~ReMutexHolder()

ReMutexHolder::~ReMutexHolder ( )
inline

Definition at line 58 of file reMutexHolder.I.


The documentation for this class was generated from the following files: