6#ifndef LEVELZEROSIGNAL_HPP_INCLUDE
7#define LEVELZEROSIGNAL_HPP_INCLUDE
17 class LevelZeroDevicePool;
24 unsigned int gpu,
double scalar);
28 double sample(
void)
override;
29 double read(
void)
const override;
33 std::function<double (
unsigned int)> m_devpool_func;
34 unsigned int m_domain_idx;
36 bool m_is_batch_ready;
38 mutable bool m_is_sampled;
Definition LevelZeroSignal.hpp:20
virtual ~LevelZeroSignal()=default
bool is_sampled(void) const override
True if the signal has been sampled during this batch.
Definition LevelZeroSignal.cpp:38
void setup_batch(void) override
Prepare the signal for being updated through side effects by the owner's read_batch step....
Definition LevelZeroSignal.cpp:25
void set_sample(double value) override
Set the value to be returned by sample()
Definition LevelZeroSignal.cpp:32
LevelZeroSignal & operator=(const LevelZeroSignal &other)=delete
LevelZeroSignal(const LevelZeroSignal &other)=delete
double sample(void) override
Apply any conversions necessary to interpret the latest stored value as a double.
Definition LevelZeroSignal.cpp:43
double read(void) const override
Read directly the value of the signal without affecting any pushed batch signals.
Definition LevelZeroSignal.cpp:53