summaryrefslogtreecommitdiff
path: root/OpenModelicaArduino/Firmware/Tiva C/StandardFirmata/FirmataParser.h
diff options
context:
space:
mode:
Diffstat (limited to 'OpenModelicaArduino/Firmware/Tiva C/StandardFirmata/FirmataParser.h')
-rw-r--r--OpenModelicaArduino/Firmware/Tiva C/StandardFirmata/FirmataParser.h105
1 files changed, 0 insertions, 105 deletions
diff --git a/OpenModelicaArduino/Firmware/Tiva C/StandardFirmata/FirmataParser.h b/OpenModelicaArduino/Firmware/Tiva C/StandardFirmata/FirmataParser.h
deleted file mode 100644
index bb0c8be..0000000
--- a/OpenModelicaArduino/Firmware/Tiva C/StandardFirmata/FirmataParser.h
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- FirmataParser.h
- Copyright (c) 2006-2008 Hans-Christoph Steiner. All rights reserved.
- Copyright (C) 2009-2016 Jeff Hoefs. All rights reserved.
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- See file LICENSE.txt for further informations on licensing terms.
-*/
-
-#ifndef FirmataParser_h
-#define FirmataParser_h
-
-#if defined(__cplusplus) && !defined(ARDUINO)
- #include <cstddef>
- #include <cstdint>
-#else
- #include <stddef.h>
- #include <stdint.h>
-#endif
-
-namespace firmata {
-
-class FirmataParser
-{
- public:
- /* callback function types */
- typedef void (*callbackFunction)(void * context, uint8_t command, uint16_t value);
- typedef void (*dataBufferOverflowCallbackFunction)(void * context);
- typedef void (*stringCallbackFunction)(void * context, const char * c_str);
- typedef void (*sysexCallbackFunction)(void * context, uint8_t command, size_t argc, uint8_t * argv);
- typedef void (*systemCallbackFunction)(void * context);
- typedef void (*versionCallbackFunction)(void * context, size_t sv_major, size_t sv_minor, const char * firmware);
-
- FirmataParser(uint8_t * dataBuffer = (uint8_t *)NULL, size_t dataBufferSize = 0);
-
- /* serial receive handling */
- void parse(uint8_t value);
- bool isParsingMessage(void) const;
- int setDataBufferOfSize(uint8_t * dataBuffer, size_t dataBufferSize);
-
- /* attach & detach callback functions to messages */
- void attach(uint8_t command, callbackFunction newFunction, void * context = NULL);
- void attach(dataBufferOverflowCallbackFunction newFunction, void * context = NULL);
- void attach(uint8_t command, stringCallbackFunction newFunction, void * context = NULL);
- void attach(uint8_t command, sysexCallbackFunction newFunction, void * context = NULL);
- void attach(uint8_t command, systemCallbackFunction newFunction, void * context = NULL);
- void attach(uint8_t command, versionCallbackFunction newFunction, void * context = NULL);
- void detach(uint8_t command);
- void detach(dataBufferOverflowCallbackFunction);
-
- private:
- /* input message handling */
- bool allowBufferUpdate;
- uint8_t * dataBuffer; // multi-byte data
- size_t dataBufferSize;
- uint8_t executeMultiByteCommand; // execute this after getting multi-byte data
- uint8_t multiByteChannel; // channel data for multiByteCommands
- size_t waitForData; // this flag says the next serial input will be data
-
- /* sysex */
- bool parsingSysex;
- size_t sysexBytesRead;
-
- /* callback context */
- void * currentAnalogCallbackContext;
- void * currentDigitalCallbackContext;
- void * currentReportAnalogCallbackContext;
- void * currentReportDigitalCallbackContext;
- void * currentPinModeCallbackContext;
- void * currentPinValueCallbackContext;
- void * currentReportFirmwareCallbackContext;
- void * currentReportVersionCallbackContext;
- void * currentDataBufferOverflowCallbackContext;
- void * currentStringCallbackContext;
- void * currentSysexCallbackContext;
- void * currentSystemResetCallbackContext;
-
- /* callback functions */
- callbackFunction currentAnalogCallback;
- callbackFunction currentDigitalCallback;
- callbackFunction currentReportAnalogCallback;
- callbackFunction currentReportDigitalCallback;
- callbackFunction currentPinModeCallback;
- callbackFunction currentPinValueCallback;
- dataBufferOverflowCallbackFunction currentDataBufferOverflowCallback;
- stringCallbackFunction currentStringCallback;
- sysexCallbackFunction currentSysexCallback;
- versionCallbackFunction currentReportFirmwareCallback;
- systemCallbackFunction currentReportVersionCallback;
- systemCallbackFunction currentSystemResetCallback;
-
- /* private methods ------------------------------ */
- bool bufferDataAtPosition(const uint8_t data, const size_t pos);
- size_t decodeByteStream(size_t bytec, uint8_t * bytev);
- void processSysexMessage(void);
- void systemReset(void);
-};
-
-} // firmata
-
-#endif /* FirmataParser_h */