Command for method calls to the sensor. More...
#include <MethodCommand.h>
Public Member Functions | |
std::vector< uint8_t > | addTelegramData (const std::vector< uint8_t > &telegram) const |
Adds the data to the telegram. More... | |
bool | canBeExecutedWithoutSessionID () const |
Returns if the command can be executed without a session ID. Will return false for most commands except the commands to establish a connection. More... | |
uint16_t | getMethodIndex () const |
MethodCommand (Cola2Session &session, const uint16_t &method_index) | |
Constructor of the method command. More... | |
bool | processReply () |
Processes the return from the sensor. More... | |
void | setMethodIndex (const uint16_t &method_index) |
Public Member Functions inherited from sick::cola2::Command | |
Command (sick::cola2::Cola2Session &session, const uint16_t &command_type, const uint16_t &command_mode) | |
Constructor of the command. Sets the common variables for a command to the sensor. More... | |
std::vector< uint8_t > | constructTelegram (const std::vector< uint8_t > &telegram) const |
Adds the data to the telegram and afterwards the header with the correct length. More... | |
uint8_t | getCommandMode () const |
Returns the command mode. More... | |
uint8_t | getCommandType () const |
Returns the command type. More... | |
std::vector< uint8_t > | getDataVector () const |
Returns the data vector. More... | |
uint16_t | getRequestID () const |
Returns the request id of the command. More... | |
uint32_t | getSessionID () const |
Returns the current session ID. More... | |
void | lockExecutionMutex () |
Locks a mutex to prevent other commands being executed in parallel. More... | |
void | processReplyBase (const std::vector< uint8_t > &packet) |
Parses the da incoming data package and then processes it with the inherited processReply. Afterwards the mutex will be unlocked to allow new commands to be send. More... | |
void | setCommandMode (const uint8_t &command_mode) |
Sets the command mode. More... | |
void | setCommandType (const uint8_t &command_type) |
Sets the command type. More... | |
void | setDataVector (const std::vector< uint8_t > &data) |
Sets the data vector. More... | |
void | setRequestID (const uint16_t &request_id) |
Sets the request ID of the command. More... | |
void | setSessionID (const uint32_t &session_id) |
Sets the session ID. More... | |
void | waitForCompletion () |
Scooped call to the mutex, which will block until the reply was processed. More... | |
bool | wasSuccessful () const |
Returns if the command was successfully parsed. More... | |
virtual | ~Command () |
We have virtual member functions, so a virtual destructor is needed. More... | |
Private Attributes | |
uint16_t | m_method_index |
Additional Inherited Members | |
Protected Member Functions inherited from sick::cola2::Command | |
std::vector< uint8_t > | expandTelegram (const std::vector< uint8_t > &telegram, size_t additional_bytes) const |
Protected Attributes inherited from sick::cola2::Command | |
sick::cola2::Cola2Session & | m_session |
Command for method calls to the sensor.
Definition at line 46 of file MethodCommand.h.
sick::cola2::MethodCommand::MethodCommand | ( | Cola2Session & | session, |
const uint16_t & | method_index | ||
) |
Constructor of the method command.
session | The current cola2 session. |
method_index | The index of the method to call in the sensor. |
Definition at line 43 of file MethodCommand.cpp.
|
virtual |
Adds the data to the telegram.
telegram | The telegram which will be modified by the data. |
Implements sick::cola2::Command.
Definition at line 49 of file MethodCommand.cpp.
bool sick::cola2::MethodCommand::canBeExecutedWithoutSessionID | ( | ) | const |
Returns if the command can be executed without a session ID. Will return false for most commands except the commands to establish a connection.
Definition at line 58 of file MethodCommand.cpp.
uint16_t sick::cola2::MethodCommand::getMethodIndex | ( | ) | const |
Definition at line 79 of file MethodCommand.cpp.
|
virtual |
Processes the return from the sensor.
Implements sick::cola2::Command.
Definition at line 63 of file MethodCommand.cpp.
void sick::cola2::MethodCommand::setMethodIndex | ( | const uint16_t & | method_index | ) |
Definition at line 84 of file MethodCommand.cpp.
|
private |
Definition at line 84 of file MethodCommand.h.