41 uint16_t digital_input;
50 bool serialise(ecl::PushAndPop<unsigned char> & byteStream)
52 buildBytes(Header::GpInput, byteStream);
53 buildBytes(
length, byteStream);
54 buildBytes(data.digital_input, byteStream);
55 for (
unsigned int i = 0; i < data.
analog_input.size(); ++i)
59 for (
unsigned int i = 0; i < 3; ++i)
61 buildBytes(0x0000, byteStream);
66 bool deserialise(ecl::PushAndPop<unsigned char> & byteStream)
68 if (byteStream.size() <
static_cast<unsigned int>(
length)+2)
74 unsigned char header_id(0x00), length_packed(0x00);
75 buildVariable(header_id, byteStream);
76 buildVariable(length_packed, byteStream);
77 if( header_id != Header::GpInput )
return false;
78 if( length_packed !=
length )
return false;
80 buildVariable(data.digital_input, byteStream);
87 for (
unsigned int i = 0; i < 4; ++i)
91 for (
unsigned int i = 0; i < 3; ++i) {
93 buildVariable(dummy, byteStream);