6#ifndef SSTCONTROL_HPP_INCLUDE
7#define SSTCONTROL_HPP_INCLUDE
52 int cpu_idx, uint32_t command, uint32_t subcommand,
53 uint32_t interface_parameter, uint32_t write_value, uint32_t begin_bit,
54 uint32_t end_bit,
double scale, uint32_t rmw_subcommand,
55 uint32_t rmw_interface_parameter, uint32_t rmw_read_mask);
58 void adjust(
double value)
override;
59 void write(
double value)
override;
60 void save(
void)
override;
62 void set_write_dependency(uint64_t trigger_value, std::weak_ptr<geopm::Control> dependency, uint64_t dependency_write_value);
65 std::shared_ptr<SSTIO> m_sstio;
68 const uint32_t m_command;
69 const uint32_t m_subcommand;
70 const uint32_t m_interface_parameter;
71 const uint32_t m_write_value;
75 const uint64_t m_mask;
76 const uint32_t m_rmw_subcommand;
77 const uint32_t m_rmw_interface_parameter;
78 const uint32_t m_rmw_read_mask;
79 const double m_multiplier;
80 uint32_t m_saved_value;
82 uint64_t m_trigger_write_value;
83 std::weak_ptr<geopm::Control> m_dependency;
84 uint64_t m_dependency_write_value;
Definition Control.hpp:16
Definition SSTControl.hpp:21
void save(void) override
Store the current setting of the control for use by a future call to restore().
Definition SSTControl.cpp:80
virtual ~SSTControl()=default
void adjust(double value) override
Store values to be written by the owner's write_batch step.
Definition SSTControl.cpp:54
void write(double value) override
Write the value of the control without affecting any pushed batch controls.
Definition SSTControl.cpp:61
void restore(void) override
Restore the setting stored by save().
Definition SSTControl.cpp:98
void setup_batch(void) override
Prepare the control for being written through side effects by the owner's write_batch step....
Definition SSTControl.cpp:41
ControlType
Definition SSTControl.hpp:24
@ M_MBOX
Definition SSTControl.hpp:25
@ M_MMIO
Definition SSTControl.hpp:26
void set_write_dependency(uint64_t trigger_value, std::weak_ptr< geopm::Control > dependency, uint64_t dependency_write_value)
Definition SSTControl.cpp:117