C/C++ API Reference
Loading...
Searching...
No Matches
pw::clock_tree::ElementBlocking Class Reference

Overview

Abstract class of a clock tree element that might need to block to perform element updates.

Inheritance diagram for pw::clock_tree::ElementBlocking:
pw::clock_tree::Element

Static Public Attributes

static constexpr bool kMayBlock = true
 
static constexpr bool kMayFail = true
 

Protected Member Functions

sync::Mutexlock ()
 
- Protected Member Functions inherited from pw::clock_tree::Element
virtual Status DoAcquireLocked ()=0
 
virtual Status DoReleaseLocked ()=0
 
uint32_t IncRef ()
 Increment reference count and return incremented value.
 
uint32_t DecRef ()
 Decrement reference count and return decremented value.
 
virtual Status DoEnable ()=0
 Function called when the clock tree element needs to get enabled.
 
virtual Status DoDisable ()
 

Private Member Functions

Status DoAcquire () final
 Handle Acquire(), deferring locking the child class.
 
Status DoRelease () final
 Handle Release(), deferring locking the child class.
 

Additional Inherited Members

- Public Member Functions inherited from pw::clock_tree::Element
constexpr Element (bool may_block)
 
uint32_t ref_count () const
 Get reference count for this clock tree element.
 
bool may_block () const
 Check whether acquiring or releasing the element may block.
 
 Element (const Element &)=delete
 
 Element (const Element &&)=delete
 
Elementoperator= (const Element &)=delete
 
Elementoperator= (const Element &&)=delete
 
Status Acquire ()
 
Status Release ()
 
Status AcquireWith (Element &element_with)
 

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