// SPDX-License-Identifier: Apache-2.0 // Copyright (c) 2012-2024 Scott Penrose and WII5 Buoy contributors // // This file is part of WII5 Buoy firmware. // See LICENSE for full terms. /** * @file WII5Strings.h * @brief String-formatting helpers: strDriver, strStatus, strError, etc. */ #ifndef WII5Strings_h #define WII5Strings_h #include #include class WII5Strings { public: WII5Strings() {} virtual WII5_CONTROLLERS controllerId() {return WII5CONTROLLER_STRINGS;} WII5_COMMANDS parseCommand(char *in1, char *in2 = NULL, char *in3 = NULL); WII5_DEVICES parseDevice(char *in); WII5_DRIVERS parseDriver(char *in); WII5_PORTS parsePort(char *in); WII5GPS_MODES parseGPSMode(char *in); WII5_SWITCH parseSwitch(char *in); WII5_MODES parseMode(char *in); // char* strDevice(); char* strCommand(WII5_COMMANDS c); char* strDevice(WII5_DEVICES d); char* strDriver(WII5_DRIVERS d); char* strPort(WII5_PORTS p); char* strStatus(WII5_STATUS s); char* strError(WII5_ERRORS e); char* strSwitch(WII5_SWITCH s); char* strGPSMode(WII5GPS_MODES m); char* strPinMode(uint8_t p); char* strState(uint8_t p); char* strMode(WII5_MODES p); char* strPinArduinoName(uint8_t p); char* strPinWII5Name(uint8_t p); char* strSelfTestStatus(WII5SELFTEST_STATUS in); char* strSelfTestStatusLong(WII5SELFTEST_STATUS in); char* strSelfTestDevice(WII5SELFTEST_DEVICES in); protected: // TODO - remove anything hard coded // TODO - use protected memory - strncpy et al void setBufferUnknown(); }; extern WII5Strings wii5Strings; #endif