Krita Source Code Documentation
Loading...
Searching...
No Matches
KisUpgradeToWriteLocker Class Reference

The KisUpgradeToWriteLocker class is use for RAII style unlocking the read lock and then locking the lock for write. We basically "upgrade" the lock to a write one. More...

#include <KisUpgradeToWriteLocker.h>

Public Member Functions

 KisUpgradeToWriteLocker (QReadLocker *locker)
 
 ~KisUpgradeToWriteLocker ()
 

Private Attributes

QReadLocker * m_locker
 

Detailed Description

The KisUpgradeToWriteLocker class is use for RAII style unlocking the read lock and then locking the lock for write. We basically "upgrade" the lock to a write one.

WARNING: during the upgrade the lock passes the "unlocked" state, so all the protected data you acquired during the "read" phase might have become invalidated!

Definition at line 22 of file KisUpgradeToWriteLocker.h.

Constructor & Destructor Documentation

◆ KisUpgradeToWriteLocker()

KisUpgradeToWriteLocker::KisUpgradeToWriteLocker ( QReadLocker * locker)
inline

Definition at line 25 of file KisUpgradeToWriteLocker.h.

26 : m_locker(locker)
27 {
28 m_locker->unlock();
29 m_locker->readWriteLock()->lockForWrite();
30 }

References m_locker.

◆ ~KisUpgradeToWriteLocker()

KisUpgradeToWriteLocker::~KisUpgradeToWriteLocker ( )
inline

Definition at line 32 of file KisUpgradeToWriteLocker.h.

32 {
33 m_locker->readWriteLock()->unlock();
34 m_locker->relock();
35 }

References m_locker.

Member Data Documentation

◆ m_locker

QReadLocker* KisUpgradeToWriteLocker::m_locker
private

Definition at line 38 of file KisUpgradeToWriteLocker.h.


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