A base class for communicating with Hardware, typically firmware by the software. Commands a queued up and sent, before waiting for a response for each command. More...
#include <HardwareCommandQueue.h>
Classes | |
struct | CommandQueueItem |
struct | CommandRecord |
Public Member Functions | |
void | addCommandToFront (t_type command, const String &args=String(), const String ®ex=String()) |
virtual bool | allowMultipleCommandsInStream (t_type command, const String &args) const |
uint04 | bufferOffset () const |
virtual void | cancelCommand () |
void | clearCommands () |
CommandInformation | commandInformation (t_type command) |
TimeSpan | commandTimeout () const |
const String & | currentArgs () const |
t_type | currentCommand () const |
const String & | currentRegex () const |
void | disableCommand (t_type command) |
virtual void | endCommandQueue () |
virtual void | executeCommand (const t_type &command, const String &args)=0 |
void | executeCommandBlocking (const t_type &command, const String &args=String()) |
void | finishCommand () |
String | getCommandCSVInfo (bool only_supported, bool include_identity_info, char deliminator=',') const |
JSONNode | getCommandJSONInfo (bool only_supported) const |
bool | hasPending () const |
bool | hasPendingCommand (t_type command) const |
virtual void | onFailure (const t_type &command) |
bool | popCommandAndExecute () |
void | postCommand (t_type command, const String &args=String(), const String ®ex=String()) |
void | removeCommand (t_type command) |
virtual void | retryCommand () |
TimeSpan | rxDelay () const |
void | setBufferOffset (uint04 buffer_offset) |
void | setFromJSONInfo (const JSONNode &root, bool allow_command_override, ProgressInfo *log) |
void | setSupport (t_type command, CommandSupport support) |
void | setSupported (t_type command, bool supported) |
virtual bool | supportsCommand (t_type command) const |
TimeSpan | txDelay () const |
Static Public Attributes | |
static const uint04 | s_buffer_size = 256000 |
Protected Attributes | |
uint04 | m_buffer_offset = 0 |
Dictionary< t_type, CommandInformation > | m_command_info |
CommandQueueItem | m_current_command |
Time | m_current_command_start_time = Constant<Time>::Invalid |
Buffer< CommandQueueItem > | m_ordered_commands |
CommandQueueItem | m_pending_block_command |
Dictionary< t_type, uint04 > | m_pending_commands |
Buffer< CommandRecord > | m_records |
A base class for communicating with Hardware, typically firmware by the software. Commands a queued up and sent, before waiting for a response for each command.
|
inline |
|
inlinevirtual |
|
inline |
|
inlinevirtual |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
|
pure virtual |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
|
inline |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
static |