6#ifndef MSRFIELDSIGNAL_HPP_INCLUDE
7#define MSRFIELDSIGNAL_HPP_INCLUDE
19 class RolloverGenerator;
37 double sample(
void)
override;
38 double read(
void)
const override;
40 double convert_raw_value(
double val)
const;
49 std::shared_ptr<Signal> m_raw_msr;
52 const uint64_t m_mask;
54 const double m_scalar;
55 bool m_is_batch_ready;
56 std::shared_ptr<RolloverGenerator> m_rollover_gen;
Definition MSRFieldSignal.hpp:26
double read(void) const override
Read directly the value of the signal without affecting any pushed batch signals.
Definition MSRFieldSignal.cpp:107
void setup_batch(void) override
Prepare the signal for being updated through side effects by the owner's read_batch step....
Definition MSRFieldSignal.cpp:54
MSRFieldSignal(const MSRFieldSignal &other)=delete
MSRFieldSignal & operator=(const MSRFieldSignal &other)=delete
virtual ~MSRFieldSignal()=default
double sample(void) override
Apply any conversions necessary to interpret the latest stored value as a double.
Definition MSRFieldSignal.cpp:98