Program Listing for File FirmwareVersionVariableCommand.h

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

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

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

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

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

#ifndef SICK_SAFETYSCANNERS_BASE_COLA2_FIRMWAREVERSIONVARIABLECOMMAND_H
#define SICK_SAFETYSCANNERS_BASE_COLA2_FIRMWAREVERSIONVARIABLECOMMAND_H

#include <string>

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

namespace sick {
namespace cola2 {

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

  FirmwareVersionVariableCommand(Cola2Session& session,
                                 datastructure::FirmwareVersion& firmware_version);

  bool canBeExecutedWithoutSessionID() const;

  bool processReply();


private:
  std::shared_ptr<sick::data_processing::ParseFirmwareVersion> m_firmware_version_parser_ptr;

  datastructure::FirmwareVersion& m_firmware_version;
};

} // namespace cola2
} // namespace sick

#endif // SICK_SAFETYSCANNERS_BASE_COLA2_FIRMWAREVERSIONVARIABLECOMMAND_H