C/C++ API Reference
Loading...
Searching...
No Matches
pw::clock_tree::ClockMcuxpressoSyncSelector< ElementType > Class Template Reference

Overview

template<typename ElementType>
class pw::clock_tree::ClockMcuxpressoSyncSelector< ElementType >

Class template implementing a synchronized clock mux.

This class supports:

  • Clock muxes which can be disabled (kNONE_to_*) and those which cannot.
  • Dynamic source selection via ChangeSource.
Inheritance diagram for pw::clock_tree::ClockMcuxpressoSyncSelector< ElementType >:
pw::clock_tree::DependentElement< ElementType >

Public Member Functions

template<typename SourceType >
constexpr ClockMcuxpressoSyncSelector (SourceType &initial_source, clock_attach_id_t initial_selector, clock_attach_id_t disable_selector=kNoSelector)
 
template<typename SourceType >
pw::Status ChangeSource (SourceType &new_source, clock_attach_id_t new_selector)
 
- Public Member Functions inherited from pw::clock_tree::DependentElement< ElementType >
template<typename SourceType >
constexpr DependentElement (SourceType &source)
 Create a dependent clock tree element that depends on source.
 

Static Public Attributes

static constexpr clock_attach_id_t kNoSelector
 

Additional Inherited Members

- Protected Member Functions inherited from pw::clock_tree::DependentElement< ElementType >
template<typename SourceType >
void SetSource (SourceType &source)
 
Elementsource ()
 

Constructor & Destructor Documentation

◆ ClockMcuxpressoSyncSelector()

template<typename ElementType >
template<typename SourceType >
constexpr pw::clock_tree::ClockMcuxpressoSyncSelector< ElementType >::ClockMcuxpressoSyncSelector ( SourceType &  initial_source,
clock_attach_id_t  initial_selector,
clock_attach_id_t  disable_selector = kNoSelector 
)
inlineconstexpr

Constructs a new ClockMcuxpressoSyncSelector.

Parameters
initial_sourceThe initial logical source element. This should reflect the state of the mux when this object is constructed.
initial_selectorThe initial selector. This should reflect the state of the mux when this object is constructed.
disable_selectorThe selector value which can be used to disable the mux. If the mux does not support such a value, pass kNoSelector.

Member Data Documentation

◆ kNoSelector

template<typename ElementType >
constexpr clock_attach_id_t pw::clock_tree::ClockMcuxpressoSyncSelector< ElementType >::kNoSelector
staticconstexpr
Initial value:
=
static_cast<clock_attach_id_t>(0)

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