@@ -54,18 +54,19 @@ wippersnapper_analogio_AnalogIOEvent *AnalogIOModel::GetAnalogIOEvent() {
5454 return &_msg_AnalogioEvent;
5555}
5656
57- bool AnalogIOModel::EncodeAnalogIOEventRaw (char *pin_name, int16_t pin_value) {
57+ bool AnalogIOModel::EncodeAnalogIOEvent (
58+ char *pin_name, float pin_value,
59+ wippersnapper_sensor_SensorType read_type) {
5860 // Initialize the AnalogIOEvent message to default values
5961 _msg_AnalogioEvent = wippersnapper_analogio_AnalogIOEvent_init_zero;
6062 // Fill the AnalogIOEvent message's fields
6163 strncpy (_msg_AnalogioEvent.pin_name , pin_name,
6264 sizeof (_msg_AnalogioEvent.pin_name ));
6365 _msg_AnalogioEvent.has_sensor_event = true ;
64- _msg_AnalogioEvent.sensor_event .type =
65- wippersnapper_sensor_SensorType_SENSOR_TYPE_RAW;
66+ _msg_AnalogioEvent.sensor_event .type = read_type;
6667 _msg_AnalogioEvent.sensor_event .which_value =
6768 wippersnapper_sensor_SensorEvent_float_value_tag;
68- _msg_AnalogioEvent.sensor_event .value .float_value = ( float ) pin_value;
69+ _msg_AnalogioEvent.sensor_event .value .float_value = pin_value;
6970
7071 // Obtain size of an encoded AnalogIOEvent message
7172 size_t sz_aio_event_msg;
@@ -81,30 +82,13 @@ bool AnalogIOModel::EncodeAnalogIOEventRaw(char *pin_name, int16_t pin_value) {
8182 &_msg_AnalogioEvent);
8283}
8384
85+ bool AnalogIOModel::EncodeAnalogIOEventRaw (char *pin_name, int16_t pin_value) {
86+ return EncodeAnalogIOEvent (pin_name, (float )pin_value,
87+ wippersnapper_sensor_SensorType_SENSOR_TYPE_RAW);
88+ }
89+
8490bool AnalogIOModel::EncodeAnalogIOEventVoltage (char *pin_name,
8591 float pin_value) {
86- // Initialize the AnalogIOEvent message to default values
87- _msg_AnalogioEvent = wippersnapper_analogio_AnalogIOEvent_init_zero;
88- // Fill the AnalogIOEvent message's fields
89- strncpy (_msg_AnalogioEvent.pin_name , pin_name,
90- sizeof (_msg_AnalogioEvent.pin_name ));
91- _msg_AnalogioEvent.has_sensor_event = true ;
92- _msg_AnalogioEvent.sensor_event .type =
93- wippersnapper_sensor_SensorType_SENSOR_TYPE_VOLTAGE;
94- _msg_AnalogioEvent.sensor_event .which_value =
95- wippersnapper_sensor_SensorEvent_float_value_tag;
96- _msg_AnalogioEvent.sensor_event .value .float_value = pin_value;
97-
98- // Obtain size of an encoded AnalogIOEvent message
99- size_t sz_aio_event_msg;
100- if (!pb_get_encoded_size (&sz_aio_event_msg,
101- wippersnapper_analogio_AnalogIOEvent_fields,
102- &_msg_AnalogioEvent))
103- return false ;
104-
105- // Encode the AnalogIOEvent message
106- uint8_t buf[sz_aio_event_msg];
107- pb_ostream_t msg_stream = pb_ostream_from_buffer (buf, sizeof (buf));
108- return pb_encode (&msg_stream, wippersnapper_analogio_AnalogIOEvent_fields,
109- &_msg_AnalogioEvent);
92+ return EncodeAnalogIOEvent (
93+ pin_name, pin_value, wippersnapper_sensor_SensorType_SENSOR_TYPE_VOLTAGE);
11094}
0 commit comments