Program Listing for File MonitoringCaseVariableCommand.h

Return to documentation for file (/tmp/ws/src/sick_safetyscanners_base/include/sick_safetyscanners_base/cola2/MonitoringCaseVariableCommand.h)

// this is for emacs file handling -*- mode: c++; indent-tabs-mode: nil -*-

// -- BEGIN LICENSE BLOCK ----------------------------------------------

// -- END LICENSE BLOCK ------------------------------------------------

//----------------------------------------------------------------------
//----------------------------------------------------------------------

#ifndef SICK_SAFETYSCANNERS_BASE_COLA2_MONITORINGCASEVARIABLECOMMAND_H
#define SICK_SAFETYSCANNERS_BASE_COLA2_MONITORINGCASEVARIABLECOMMAND_H


#include "sick_safetyscanners_base/cola2/VariableCommand.h"
#include "sick_safetyscanners_base/data_processing/ParseMonitoringCaseData.h"
#include "sick_safetyscanners_base/datastructure/CommSettings.h"

namespace sick {
namespace cola2 {

class MonitoringCaseVariableCommand : public VariableCommand
{
public:
  typedef sick::cola2::VariableCommand base_class;


  MonitoringCaseVariableCommand(Cola2Session& session,
                                datastructure::MonitoringCaseData& monitoring_case_data,
                                const uint16_t& index);

  bool canBeExecutedWithoutSessionID() const;

  bool processReply();


private:
  std::shared_ptr<sick::data_processing::ParseMonitoringCaseData> m_monitoring_case_parser_ptr;

  sick::datastructure::MonitoringCaseData& m_monitoring_case_data;
};

} // namespace cola2
} // namespace sick

#endif // SICK_SAFETYSCANNERS_BASE_COLA2_MONITORINGCASEVARIABLECOMMAND_H