Program Listing for File GeneralSystemState.h

Return to documentation for file (/tmp/ws/src/sick_safetyscanners_base/include/sick_safetyscanners_base/datastructure/GeneralSystemState.h)

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

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

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

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

#ifndef SICK_SAFETYSCANNERS_BASE_DATASTRUCTURE_GENERALSYSTEMSTATE_H
#define SICK_SAFETYSCANNERS_BASE_DATASTRUCTURE_GENERALSYSTEMSTATE_H

#include <stdint.h>
#include <vector>

namespace sick {
namespace datastructure {

class GeneralSystemState
{
public:
  GeneralSystemState();

  bool getRunModeActive() const;
  void setRunModeActive(bool run_mode_active);

  bool getStandbyModeActive() const;

  void setStandbyModeActive(bool standby_mode_active);

  bool getContaminationWarning() const;

  void setContaminationWarning(bool contamination_warning);

  bool getContaminationError() const;

  void setContaminationError(bool contamination_error);

  bool getReferenceContourStatus() const;

  void setReferenceContourStatus(bool reference_contour_status);

  bool getManipulationStatus() const;

  void setManipulationStatus(bool manipulation_status);

  std::vector<bool> getSafeCutOffPathVector() const;

  void setSafeCutOffPathvector(const std::vector<bool>& safe_cut_off_path_vector);

  std::vector<bool> getNonSafeCutOffPathVector() const;

  void setNonSafeCutOffPathVector(const std::vector<bool>& non_safe_cut_off_path_vector);

  std::vector<bool> getResetRequiredCutOffPathVector() const;

  void
  setResetRequiredCutOffPathVector(const std::vector<bool>& reset_required_cut_off_path_vector);

  uint8_t getCurrentMonitoringCaseNoTable1() const;

  void setCurrentMonitoringCaseNoTable1(const uint8_t& current_monitoring_case_no_table_1);

  uint8_t getCurrentMonitoringCaseNoTable2() const;

  void setCurrentMonitoringCaseNoTable2(const uint8_t& current_monitoring_case_no_table_2);

  uint8_t getCurrentMonitoringCaseNoTable3() const;

  void setCurrentMonitoringCaseNoTable3(const uint8_t& current_monitoring_case_no_table_3);

  uint8_t getCurrentMonitoringCaseNoTable4() const;

  void setCurrentMonitoringCaseNoTable4(const uint8_t& current_monitoring_case_no_table_4);

  bool getApplicationError() const;

  void setApplicationError(bool application_error);

  bool getDeviceError() const;

  void setDeviceError(bool device_error);


  bool isEmpty() const;

  void setIsEmpty(bool is_empty);

private:
  bool m_is_empty;
  bool m_run_mode_active;
  bool m_standby_mode_active;
  bool m_contamination_warning;
  bool m_contamination_error;
  bool m_reference_contour_status;
  bool m_manipulation_status;

  std::vector<bool> m_safe_cut_off_path_vector;
  std::vector<bool> m_non_safe_cut_off_path_vector;
  std::vector<bool> m_reset_required_cut_off_path_vector;

  uint8_t m_current_monitoring_case_no_table_1;
  uint8_t m_current_monitoring_case_no_table_2;
  uint8_t m_current_monitoring_case_no_table_3;
  uint8_t m_current_monitoring_case_no_table_4;

  bool m_application_error;
  bool m_device_error;
};

} // namespace datastructure
} // namespace sick

#endif // SICK_SAFETYSCANNERS_BASE_DATASTRUCTURE_GENERALSYSTEMSTATE_H