8#ifndef SRC_COMMANDINTERFACE_H_
9#define SRC_COMMANDINTERFACE_H_
49 bool addBuf(
char* Buf, uint32_t *Len);
51 bool getNewCommands(std::vector<ParsedCommand>& commands)
override;
52 static void formatReply(std::string& reply,
const std::vector<CommandResult>& results,
const bool formatWriteAsRead=
false);
56 const std::string
getHelpstring(){
return "Syntax:\nGet: cls.(instance.)cmd? or cls.(instance.)cmd?adr\nSet: cls.(instance.)cmd=val or cls.(instance.)cmd=val?adr";};
std::vector< CommandResult > resultsBuffer
const uint32_t maxSendBuffer
virtual ~CDC_CommandInterface()
void batchDone() override
bool enableBroadcastFromOtherInterfaces
bool readyToSend() override
const uint32_t parserTimeout
void sendReplies(const std::vector< CommandResult > &results, CommandInterface *originalInterface) override
const std::string getHelpstring()
virtual bool getNewCommands(std::vector< ParsedCommand > &commands)=0
virtual bool readyToSend()
virtual void sendReplyAsync(std::vector< CommandReply > &reply, CommandHandler *handler, uint32_t cmdId, CMDtype type)
static std::vector< CommandInterface * > cmdInterfaces
virtual bool hasNewCommands()
static void broadcastCommandReplyAsync(const std::vector< CommandReply > &reply, CommandHandler *handler, uint32_t cmdId, CMDtype type=CMDtype::get)
virtual ~CommandInterface()
static CommandResult makeCommandReply(const std::vector< CommandReply > &reply, CommandHandler *handler, uint32_t cmdId, CMDtype type=CMDtype::get, CommandInterface *originalInterface=nullptr)
virtual void sendReplies(const std::vector< CommandResult > &results, CommandInterface *originalInterface)=0
virtual const std::string getHelpstring()
bool addBuf(char *Buf, uint32_t *Len)
static std::string formatOriginalCommandFromResult(const ParsedCommand &originalCommand, CommandHandler *commandHandler, const bool formatWriteAsRead=false)
bool getNewCommands(std::vector< ParsedCommand > &commands) override
const std::string getHelpstring()
static void generateReplyValueString(std::string &replyPart, const CommandReply &reply)
uint32_t bufferCapacity()
StringCommandInterface(uint32_t bufferMaxCapacity=512)
static void generateReplyFromCmd(std::string &replyPart, const ParsedCommand &originalCommand)
static void formatReply(std::string &reply, const std::vector< CommandResult > &results, const bool formatWriteAsRead=false)
const uint32_t parserTimeout
void sendReplies(const std::vector< CommandResult > &results, CommandInterface *originalInterface) override
void batchDone() override
UART_CommandInterface(uint32_t baud=115200)
virtual ~UART_CommandInterface()
std::vector< CommandResult > resultsBuffer
const uint32_t maxSendBuffer
const std::string getHelpstring()
bool enableBroadcastFromOtherInterfaces
UART_InitTypeDef uartconfig