geopm  3.1.1.dev214+gba4f9f6d
GEOPM - Global Extensible Open Power Manager
Public Member Functions | List of all members
geopm::TimeSignal Class Reference

#include <TimeSignal.hpp>

Inheritance diagram for geopm::TimeSignal:
Inheritance graph
[legend]
Collaboration diagram for geopm::TimeSignal:
Collaboration graph
[legend]

Public Member Functions

 TimeSignal (std::shared_ptr< geopm_time_s > time_zero, std::shared_ptr< double > time_batch)
 
 TimeSignal (const TimeSignal &other)=delete
 
TimeSignaloperator= (const TimeSignal &other)=delete
 
virtual ~TimeSignal ()=default
 
void setup_batch (void) override
 Prepare the signal for being updated through side effects by the owner's read_batch step. This method should not fail if called multiple times, and ideally only apply the side effects on the first call. More...
 
double sample (void) override
 Apply any conversions necessary to interpret the latest stored value as a double. More...
 
double read (void) const override
 Read directly the value of the signal without affecting any pushed batch signals. More...
 
- Public Member Functions inherited from geopm::Signal
virtual ~Signal ()=default
 
virtual void set_sample (double)
 Set the value to be returned by sample() More...
 
virtual bool is_sampled (void) const
 True if the signal has been sampled during this batch. More...
 

Detailed Description

A signal used by an IOGroup to produce a signal from geopm_time().

Constructor & Destructor Documentation

◆ TimeSignal() [1/2]

geopm::TimeSignal::TimeSignal ( std::shared_ptr< geopm_time_s time_zero,
std::shared_ptr< double >  time_batch 
)

◆ TimeSignal() [2/2]

geopm::TimeSignal::TimeSignal ( const TimeSignal other)
delete

◆ ~TimeSignal()

virtual geopm::TimeSignal::~TimeSignal ( )
virtualdefault

Member Function Documentation

◆ operator=()

TimeSignal& geopm::TimeSignal::operator= ( const TimeSignal other)
delete

◆ read()

double geopm::TimeSignal::read ( void  ) const
overridevirtual

Read directly the value of the signal without affecting any pushed batch signals.

Implements geopm::Signal.

◆ sample()

double geopm::TimeSignal::sample ( void  )
overridevirtual

Apply any conversions necessary to interpret the latest stored value as a double.

Implements geopm::Signal.

◆ setup_batch()

void geopm::TimeSignal::setup_batch ( void  )
overridevirtual

Prepare the signal for being updated through side effects by the owner's read_batch step. This method should not fail if called multiple times, and ideally only apply the side effects on the first call.

Implements geopm::Signal.


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