30 SensorData(std::string name, std::function<HAL_Value()> supplier, HAL_Value defaultValue,
32 SensorData(std::string name, std::function<
double()> supplier,
double defaultVal);
33 SensorData(std::string name, std::function<
int()> supplier,
int defaultVal);
34 SensorData(std::string name, std::function<
bool()> supplier,
bool defaultVal);
35 SensorData(std::string name, std::function<int64_t()> supplier, int64_t defaultVal);
44 static std::function<HAL_Value()>
Convert(std::function<
double()> supplier);
45 static std::function<HAL_Value()>
Convert(std::function<
int()> supplier);
46 static std::function<HAL_Value()>
Convert(std::function<
bool()> supplier);
47 static std::function<HAL_Value()>
Convert(std::function<int64_t()> supplier);
65 void Set(HAL_Value val);
68 void Set(int64_t val);
80 HAL_SimValueHandle
CreateValue(HAL_SimDeviceHandle device, int32_t direction);
84 std::function<HAL_Value()> m_supplier;
86 HAL_Value m_defaultValue;
87 std::optional<std::vector<std::pair<std::function<bool()>, HAL_Value>>> m_triggerValues;
88 HAL_SimValueHandle m_glassValue{HAL_INVALID_HANDLE};
89 std::optional<HAL_Value> m_prev;