peary::hal::ClockSynthesizer

A resource which can control a clock multiplier and jitter attenuator.

#include <peary/hal/Resources.hpp>

Inherits from peary::hal::Resource

Inherited by peary::board::carboard::ClockGenerator

Public Functions

Name
virtual void configure(const std::any & config) =0Configure the clock multiplier with a set of registers.
virtual void disable() =0Disable the clock synthesizer.
virtual bool isLocked() =0Check if the clock synthesizer is locked.

Additional inherited members

Public Functions inherited from peary::hal::Resource

Name
virtual ~Resource() =defaultDefault constructor.
void setName(std::string_view name)Set the name of the resource, usually corresponds to the name used in the schematic.
std::string name() constGet the name of the resource.
void setType(std::string_view type)Set the type string (e.g. VoltageRegulator)
std::string type() constGet the type of the resource.

Protected Attributes inherited from peary::hal::Resource

Name
std::string _name
std::string _type

Public Functions Documentation

function configure

  virtual void configure(
    const std::any & config
) =0
  

Configure the clock multiplier with a set of registers.

Parameters:

  • config Configuration object containing the register settings

Reimplemented by: peary::board::carboard::ClockGenerator::configure

Purely virtual function to be implemented by the actual resource class

function disable

  virtual void disable() =0
  

Disable the clock synthesizer.

Reimplemented by: peary::board::carboard::ClockGenerator::disable

Purely virtual function to be implemented by the actual resource class

function isLocked

  virtual bool isLocked() =0
  

Check if the clock synthesizer is locked.

Return: Boolean indicating whether the clock multiplier is locked

Reimplemented by: peary::board::carboard::ClockGenerator::isLocked

Purely virtual function to be implemented by the actual resource class


Updated on 2026-01-30 at 22:01:05 +0100