Command to read the field geometry from the sensor. More...
#include <FieldGeometryVariableCommand.h>
Public Types | |
typedef sick::cola2::VariableCommand | base_class |
Typedef to reference the base class. More... | |
Public Member Functions | |
void | addTelegramData (sick::datastructure::PacketBuffer::VectorBuffer &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... | |
FieldGeometryVariableCommand (Cola2Session &session, datastructure::FieldData &field_data, const uint16_t index) | |
Constructor of the command. More... | |
bool | processReply () |
Processes the return from the sensor. More... | |
Public Member Functions inherited from sick::cola2::VariableCommand | |
void | addTelegramData (sick::datastructure::PacketBuffer::VectorBuffer &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 | getVariableIndex () const |
bool | processReply () |
Processes the return from the sensor. More... | |
void | setVariableIndex (const uint16_t &variable_index) |
VariableCommand (Cola2Session &session, const uint16_t &method_index) | |
Constructor of the command. More... | |
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... | |
void | constructTelegram (sick::datastructure::PacketBuffer::VectorBuffer &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 sick::datastructure::PacketBuffer::VectorBuffer &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 | |
sick::datastructure::FieldData & | m_field_data |
std::shared_ptr< sick::data_processing::ParseFieldGeometryData > | m_field_geometry_parser_ptr |
std::shared_ptr< sick::data_processing::ReadWriteHelper > | m_writer_ptr |
Additional Inherited Members | |
Protected Attributes inherited from sick::cola2::Command | |
sick::cola2::Cola2Session & | m_session |
Command to read the field geometry from the sensor.
Definition at line 49 of file FieldGeometryVariableCommand.h.
Typedef to reference the base class.
Definition at line 55 of file FieldGeometryVariableCommand.h.
sick::cola2::FieldGeometryVariableCommand::FieldGeometryVariableCommand | ( | Cola2Session & | session, |
datastructure::FieldData & | field_data, | ||
const uint16_t | index | ||
) |
Constructor of the command.
Takes the current cola2 session and a reference to the field data variable which will be written on execution. The index defines which field variable will be read. Depending on the sensor up to 128 variables can be defined.
session | The current cola2 session. |
field_data | The field data reference which will be modified on execution. |
index | The variable index in a range of [0, 127]. |
Definition at line 43 of file FieldGeometryVariableCommand.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 53 of file FieldGeometryVariableCommand.cpp.
bool sick::cola2::FieldGeometryVariableCommand::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 59 of file FieldGeometryVariableCommand.cpp.
|
virtual |
Processes the return from the sensor.
Implements sick::cola2::Command.
Definition at line 64 of file FieldGeometryVariableCommand.cpp.
|
private |
Definition at line 99 of file FieldGeometryVariableCommand.h.
|
private |
Definition at line 97 of file FieldGeometryVariableCommand.h.
|
private |
Definition at line 96 of file FieldGeometryVariableCommand.h.