13 #include "CallbackStore.h"
14 #include "mockdata/DigitalPWMData.h"
22 std::unique_ptr<CallbackStore> RegisterInitializedCallback(
23 NotifyCallback callback,
bool initialNotify) {
24 auto store = std::make_unique<CallbackStore>(
25 m_index, -1, callback, &HALSIM_CancelDigitalPWMInitializedCallback);
26 store->SetUid(HALSIM_RegisterDigitalPWMInitializedCallback(
27 m_index, &CallbackStoreThunk, store.get(), initialNotify));
31 bool GetInitialized()
const {
32 return HALSIM_GetDigitalPWMInitialized(m_index);
35 void SetInitialized(
bool initialized) {
36 HALSIM_SetDigitalPWMInitialized(m_index, initialized);
39 std::unique_ptr<CallbackStore> RegisterDutyCycleCallback(
40 NotifyCallback callback,
bool initialNotify) {
41 auto store = std::make_unique<CallbackStore>(
42 m_index, -1, callback, &HALSIM_CancelDigitalPWMDutyCycleCallback);
43 store->SetUid(HALSIM_RegisterDigitalPWMDutyCycleCallback(
44 m_index, &CallbackStoreThunk, store.get(), initialNotify));
48 double GetDutyCycle()
const {
return HALSIM_GetDigitalPWMDutyCycle(m_index); }
50 void SetDutyCycle(
double dutyCycle) {
51 HALSIM_SetDigitalPWMDutyCycle(m_index, dutyCycle);
54 std::unique_ptr<CallbackStore> RegisterPinCallback(NotifyCallback callback,
56 auto store = std::make_unique<CallbackStore>(
57 m_index, -1, callback, &HALSIM_CancelDigitalPWMPinCallback);
58 store->SetUid(HALSIM_RegisterDigitalPWMPinCallback(
59 m_index, &CallbackStoreThunk, store.get(), initialNotify));
63 int GetPin()
const {
return HALSIM_GetDigitalPWMPin(m_index); }
65 void SetPin(
int pin) { HALSIM_SetDigitalPWMPin(m_index, pin); }
67 void ResetData() { HALSIM_ResetDigitalPWMData(m_index); }