.. _program_listing_file__tmp_ws_src_sick_safetyscanners_base_include_sick_safetyscanners_base_datastructure_ConfigData.h: Program Listing for File ConfigData.h ===================================== |exhale_lsh| :ref:`Return to documentation for file ` (``/tmp/ws/src/sick_safetyscanners_base/include/sick_safetyscanners_base/datastructure/ConfigData.h``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp // this is for emacs file handling -*- mode: c++; indent-tabs-mode: nil -*- // -- BEGIN LICENSE BLOCK ---------------------------------------------- // -- END LICENSE BLOCK ------------------------------------------------ //---------------------------------------------------------------------- //---------------------------------------------------------------------- #ifndef SICK_SAFETYSCANNERS_BASE_DATASTRUCTURE_CONFIGDATA_H #define SICK_SAFETYSCANNERS_BASE_DATASTRUCTURE_CONFIGDATA_H #include "sick_safetyscanners_base/datastructure/DerivedValues.h" #include #include #include namespace sick { namespace datastructure { class ConfigData { public: ConfigData(); 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); boost::asio::ip::address_v4 getHostIp() const; void setHostIp(const boost::asio::ip::address_v4& host_ip); void setHostIp(const std::string& host_ip); uint16_t getHostUdpPort() const; void setHostUdpPort(const uint16_t& host_udp_port); uint8_t getChannel() const; void setChannel(const uint8_t& channel); bool getEnabled() const; void setEnabled(bool enabled); uint8_t getEInterfaceType() const; void setEInterfaceType(const uint8_t& e_interface_type); uint16_t getPublishingFrequency() const; void setPublishingFrequency(const uint16_t& publishing_frequency); 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); uint16_t getFeatures() const; void setFeatures(const uint16_t& features); void setFeatures(bool general_system_state, bool derived_settings, bool measurement_data, bool intrusion_data, bool application_data); uint16_t getDerivedMultiplicationFactor() const; void setDerivedMultiplicationFactor(const uint16_t& multiplication_factor); uint16_t getDerivedNumberOfBeams() const; void setDerivedNumberOfBeams(const uint16_t& number_of_beams); uint16_t getDerivedScanTime() const; void setDerivedScanTime(const uint16_t& scan_time); float getDerivedStartAngle() const; void setDerivedStartAngle(const int32_t& start_angle); float getDerivedAngularBeamResolution() const; void setDerivedAngularBeamResolution(const int32_t& angular_beam_resolution); void setDerivedAngularBeamResolutionDegrees(const float& angular_beam_resolution); uint32_t getDerivedInterbeamPeriod() const; void setDerivedInterbeamPeriod(const uint32_t& interbeam_period); private: const double m_ANGLE_RESOLUTION = 4194304.0; // TODO cleanup and refactor in different subclasses 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; boost::asio::ip::address_v4 m_host_ip; uint16_t m_host_udp_port; uint8_t m_channel; bool m_enabled; uint8_t m_e_interface_type; uint16_t m_publishing_frequency; float m_start_angle; float m_end_angle; uint16_t m_features; uint16_t m_derived_multiplication_factor; uint16_t m_derived_number_of_beams; uint16_t m_derived_scan_time; float m_derived_start_angle; float m_derived_angular_beam_resolution; // TODO move into derived values uint16_t m_derived_interbeam_period; }; } // namespace datastructure } // namespace sick #endif // SICK_SAFETYSCANNERS_BASE_DATASTRUCTURE_CONFIGDATA_H