.. _program_listing_file__tmp_ws_src_sick_safetyscanners_base_include_sick_safetyscanners_base_data_processing_ParseUserNameData.h: Program Listing for File ParseUserNameData.h ============================================ |exhale_lsh| :ref:`Return to documentation for file ` (``/tmp/ws/src/sick_safetyscanners_base/include/sick_safetyscanners_base/data_processing/ParseUserNameData.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_DATA_PROCESSING_PARSEUSERNAMEDATA_H #define SICK_SAFETYSCANNERS_BASE_DATA_PROCESSING_PARSEUSERNAMEDATA_H #include "sick_safetyscanners_base/datastructure/Data.h" #include "sick_safetyscanners_base/datastructure/PacketBuffer.h" #include "sick_safetyscanners_base/datastructure/UserName.h" #include "sick_safetyscanners_base/data_processing/ReadWriteHelper.hpp" namespace sick { namespace data_processing { class ParseUserNameData { public: ParseUserNameData(); bool parseTCPSequence(const datastructure::PacketBuffer& buffer, datastructure::UserName& user_name) const; private: std::string readVersionIndicator(std::vector::const_iterator data_ptr) const; uint8_t readMajorNumber(std::vector::const_iterator data_ptr) const; uint8_t readMinorNumber(std::vector::const_iterator data_ptr) const; uint8_t readReleaseNumber(std::vector::const_iterator data_ptr) const; uint32_t readNameLength(std::vector::const_iterator data_ptr) const; std::string readUserName(std::vector::const_iterator data_ptr) const; }; } // namespace data_processing } // namespace sick #endif // SICK_SAFETYSCANNERS_BASE_DATA_PROCESSING_PARSEUSERNAMEDATA_H