LibreOffice
LibreOffice 24.2 SDK C/C++ API Reference
Public Member Functions | Protected Attributes | List of all members
osl::ResettableGuard< T > Class Template Reference

Template for temporary releasable mutex objects and interfaces locks. More...

#include <mutex.hxx>

Inheritance diagram for osl::ResettableGuard< T >:
osl::ClearableGuard< T >

Public Member Functions

 ResettableGuard (T *pT_)
 Acquires the object specified as parameter. More...
 
 ResettableGuard (T &rT)
 Acquires the object specified as parameter. More...
 
void reset ()
 Re-acquires the mutex or interface. More...
 
- Public Member Functions inherited from osl::ClearableGuard< T >
 ClearableGuard (T *pT_)
 Acquires the object specified as parameter. More...
 
 ClearableGuard (T &t)
 Acquires the object specified as parameter. More...
 
 ~ClearableGuard ()
 Releases the mutex or interface if not already released by clear(). More...
 
void clear ()
 Releases the mutex or interface. More...
 

Protected Attributes

T * pResetT
 
- Protected Attributes inherited from osl::ClearableGuard< T >
T * pT
 

Detailed Description

template<class T>
class osl::ResettableGuard< T >

Template for temporary releasable mutex objects and interfaces locks.

Use this if you want to acquire a lock but need to temporary release it and can't use multiple scoped Guard objects.

See also
ResettableMutexGuard

Constructor & Destructor Documentation

◆ ResettableGuard() [1/2]

template<class T >
osl::ResettableGuard< T >::ResettableGuard ( T *  pT_)
inline

Acquires the object specified as parameter.

◆ ResettableGuard() [2/2]

template<class T >
osl::ResettableGuard< T >::ResettableGuard ( T &  rT)
inline

Acquires the object specified as parameter.

Member Function Documentation

◆ reset()

template<class T >
void osl::ResettableGuard< T >::reset ( )
inline

Re-acquires the mutex or interface.

Member Data Documentation

◆ pResetT

template<class T >
T* osl::ResettableGuard< T >::pResetT
protected

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