30 template <
typename MutexT,
typename RecurseCountsT>
33 return fMutexImp.ReadLock();
39 template <
typename MutexT,
typename RecurseCountsT>
42 return fMutexImp.WriteLock();
48 template <
typename MutexT,
typename RecurseCountsT>
51 fMutexImp.ReadUnLock(hint);
57 template <
typename MutexT,
typename RecurseCountsT>
60 fMutexImp.WriteUnLock(hint);
66 template <
typename MutexT,
typename RecurseCountsT>
82 template <
typename MutexT,
typename RecurseCountsT>
83 std::unique_ptr<TVirtualRWMutex::StateDelta>
86 return fMutexImp.Rewind(earlierState);
94 template <
typename MutexT,
typename RecurseCountsT>
97 fMutexImp.Apply(std::move(delta));
104 template <
typename MutexT,
typename RecurseCountsT>
105 std::unique_ptr<TVirtualRWMutex::State>
108 return fMutexImp.GetStateBefore();
void Apply(std::unique_ptr< StateDelta > &&delta) override
Apply the mutex state delta.
Namespace for new ROOT classes and functions.
Hint_t * ReadLock() override
Take the Read Lock of the mutex.
std::unique_ptr< State > GetStateBefore() override
Get the mutex state before the current lock was taken.
Hint_t * WriteLock() override
Take the Write Lock of the mutex.
void ReadUnLock(Hint_t *) override
Release the read lock of the mutex.
void WriteUnLock(Hint_t *) override
Release the read lock of the mutex.
Earlier lock state as returned by GetState() that can be passed to Restore()
TVirtualRWMutex * Factory(Bool_t=kFALSE) override
Create mutex and return pointer to it.
std::unique_ptr< StateDelta > Rewind(const State &earlierState) override
Restore the mutex state to state.