Program Listing for File FieldData.h

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

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

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

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

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

#ifndef SICK_SAFETYSCANNERS_BASE_DATASTRUCTURE_FIELDDATA_H
#define SICK_SAFETYSCANNERS_BASE_DATASTRUCTURE_FIELDDATA_H

#include <iostream>
#include <vector>

namespace sick {
namespace datastructure {


class FieldData
{
public:
  FieldData();

  bool getIsValid() const;

  void setIsValid(bool is_valid);
  ;
  std::string getVersionCVersion() const;
  void setVersionCVersion(const std::string& version_c_version);

  uint8_t getVersionMajorVersionNumber() const;
  void setVersionMajorVersionNumber(const uint8_t& version_major_version_number);

  uint8_t getVersionMinorVersionNumber() const;
  void setVersionMinorVersionNumber(const uint8_t& version_minor_version_number);

  uint8_t getVersionReleaseNumber() const;
  void setVersionReleaseNumber(const uint8_t& version_release_number);

  bool getIsDefined() const;

  void setIsDefined(bool is_defined);
  ;

  uint8_t getEvalMethod() const;

  void setEvalMethod(const uint8_t& eval_method);

  uint16_t getMultiSampling() const;

  void setMultiSampling(const uint16_t& multi_sampling);
  ;

  uint16_t getObjectResolution() const;

  void setObjectResolution(const uint16_t& object_resolution);
  ;
  uint16_t getFieldSetIndex() const;

  void setFieldSetIndex(const uint16_t& field_set_index);
  uint32_t getNameLength() const;
  void setNameLength(const uint32_t& name_length);
  std::string getFieldName() const;
  void setFieldName(const std::string& field_name);

  bool getIsWarningField() const;

  void setIsWarningField(bool is_warning_field);

  bool getIsProtectiveField() const;

  void setIsProtectiveField(bool is_protective_field);

  std::vector<uint16_t> getBeamDistances() const;

  void setBeamDistances(const std::vector<uint16_t>& beam_distances);

  float getStartAngle() const;

  void setStartAngle(const int32_t& start_angle);

  void setStartAngleDegrees(const float& start_angle);

  float getEndAngle() const;

  void setEndAngle(const int32_t& end_angle);

  void setEndAngleDegrees(const float& end_angle);

  float getAngularBeamResolution() const;

  void setAngularBeamResolution(const int32_t& angular_beam_resolution);

  void setAngularBeamResolutionDegrees(const float& angular_beam_resolution);

private:
  const double m_ANGLE_RESOLUTION = 4194304.0;

  std::string m_version_c_version;
  uint8_t m_version_major_version_number;
  uint8_t m_version_minor_version_number;
  uint8_t m_version_release_number;
  bool m_is_valid;
  bool m_is_defined;
  uint8_t m_eval_method;
  uint16_t m_multi_sampling;
  uint16_t m_object_resolution;
  uint16_t m_field_set_index;
  uint32_t m_name_length;
  std::string m_field_name;
  bool m_is_warning_field;
  bool m_is_protective_field;
  std::vector<uint16_t> m_beam_distances; // in mm
  float m_start_angle;
  float m_end_angle;
  float m_angular_beam_resolution;
};


} // namespace datastructure
} // namespace sick

#endif // SICK_SAFETYSCANNERS_BASE_DATASTRUCTURE_FIELDDATA_H