NVDA Helper
In-process and lite high-speed utilities for NVDA
LockableAutoFreeObject Class Reference

A class providing both exclusive locking, and reference counting with auto-deletion. More...

#include <lock.h>

Inheritance diagram for LockableAutoFreeObject:
LockableObject displayModel_t

Public Member Functions

 LockableAutoFreeObject ()
 
void acquire ()
 Increases the reference count and acquires exclusive access.
 
void release ()
 
void requestDelete ()
 Deletes this object if no one has acquired it, or indicates that it should be deleted once it has been released.
 

Protected Member Functions

long incRef ()
 
long decRef ()
 

Detailed Description

A class providing both exclusive locking, and reference counting with auto-deletion.

Do not use this in multiple inheritence.

Constructor & Destructor Documentation

◆ LockableAutoFreeObject()

LockableAutoFreeObject::LockableAutoFreeObject ( )
inline

Member Function Documentation

◆ incRef()

long LockableAutoFreeObject::incRef ( )
inlineprotected

Referenced by acquire().

◆ decRef()

long LockableAutoFreeObject::decRef ( )
inlineprotected

Referenced by release(), and requestDelete().

◆ acquire()

void LockableAutoFreeObject::acquire ( )
inline

Increases the reference count and acquires exclusive access.

References LockableObject::acquire(), and incRef().

Referenced by acquireDisplayModel(), displayModelRemote_getFocusRect(), fake_ScrollWindow(), and fake_ScrollWindowEx().

◆ release()

◆ requestDelete()

void LockableAutoFreeObject::requestDelete ( )
inline

Deletes this object if no one has acquired it, or indicates that it should be deleted once it has been released.

References decRef().

Referenced by displayModelRemote_getWindowTextInRect().


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