bool SBBTA252::getStatus() { // Declare variables. int bytes_to_discard = 0; // Get the number of bytes available on the serial port. getBytesAvailable(); // Make sure we don't read too many bytes and overrun the buffer. if (bytes_available >= SERIAL_MAX_DATA) { bytes_available = SERIAL_MAX_DATA - 1; } if (bytes_available + strlen(buf_recv) >= SERIAL_MAX_DATA) { bytes_to_discard = bytes_available + strlen(buf_recv) - SERIAL_MAX_DATA - 1; memmove(buf_recv, &buf_recv[bytes_to_discard], bytes_to_discard); } // Read data off the serial port. if (bytes_available > 0) { recv(); // Look for entire message. if (findMsg()) { // Parse the status. return parseStatus(); } } return false; } // end getStatus()
void Tst::test(Msg *message_p) { switch (message_p) { case A: { const table *entry2 = findMsg(message_p); table *entry3 = findMsg(message_p); } break; case B: const table *entry2 = findMsg(message_p); table *entry3 = findMsg(message_p); break; default: break; } }