ParseData.cpp
Go to the documentation of this file.
1 // this is for emacs file handling -*- mode: c++; indent-tabs-mode: nil -*-
2 
3 // -- BEGIN LICENSE BLOCK ----------------------------------------------
4 
24 // -- END LICENSE BLOCK ------------------------------------------------
25 
26 //----------------------------------------------------------------------
33 //----------------------------------------------------------------------
34 
36 
37 namespace sick {
38 namespace data_processing {
39 
41 {
42  m_reader_ptr = std::make_shared<sick::data_processing::ReadWriteHelper>();
43  m_data_header_parser_ptr = std::make_shared<sick::data_processing::ParseDataHeader>();
44  m_derived_values_parser_ptr = std::make_shared<sick::data_processing::ParseDerivedValues>();
45  m_measurement_data_parser_ptr = std::make_shared<sick::data_processing::ParseMeasurementData>();
47  std::make_shared<sick::data_processing::ParseGeneralSystemState>();
48  m_intrusion_data_parser_ptr = std::make_shared<sick::data_processing::ParseIntrusionData>();
49  m_application_data_parser_ptr = std::make_shared<sick::data_processing::ParseApplicationData>();
50 }
51 
53  datastructure::Data& data) const
54 {
55  setDataBlocksInData(buffer, data);
56  return true;
57 }
58 
60  datastructure::Data& data) const
61 {
62  setDataHeaderInData(buffer, data);
63  setDerivedValuesInData(buffer, data);
64  setMeasurementDataInData(buffer, data);
65  setGeneralSystemStateInData(buffer, data);
66  setIntrusionDataInData(buffer, data);
67  setApplicationDataInData(buffer, data);
68 }
69 
71  datastructure::Data& data) const
72 {
74  m_data_header_parser_ptr->parseUDPSequence(buffer, data);
75  data.setDataHeaderPtr(std::make_shared<sick::datastructure::DataHeader>(data_header));
76 }
77 
79  datastructure::Data& data) const
80 {
81  sick::datastructure::DerivedValues derived_values =
82  m_derived_values_parser_ptr->parseUDPSequence(buffer, data);
83  data.setDerivedValuesPtr(std::make_shared<sick::datastructure::DerivedValues>(derived_values));
84 }
85 
87  datastructure::Data& data) const
88 {
89  sick::datastructure::MeasurementData measurement_data =
90  m_measurement_data_parser_ptr->parseUDPSequence(buffer, data);
92  std::make_shared<sick::datastructure::MeasurementData>(measurement_data));
93 }
94 
96  datastructure::Data& data) const
97 {
98  sick::datastructure::GeneralSystemState general_system_state =
99  m_general_system_state_parser_ptr->parseUDPSequence(buffer, data);
101  std::make_shared<sick::datastructure::GeneralSystemState>(general_system_state));
102 }
103 
105  datastructure::Data& data) const
106 {
107  sick::datastructure::IntrusionData intrusion_data =
108  m_intrusion_data_parser_ptr->parseUDPSequence(buffer, data);
109  data.setIntrusionDataPtr(std::make_shared<sick::datastructure::IntrusionData>(intrusion_data));
110 }
111 
113  datastructure::Data& data) const
114 {
115  sick::datastructure::ApplicationData application_data =
116  m_application_data_parser_ptr->parseUDPSequence(buffer, data);
118  std::make_shared<sick::datastructure::ApplicationData>(application_data));
119 }
120 
121 } // namespace data_processing
122 } // namespace sick
std::shared_ptr< sick::data_processing::ParseDataHeader > m_data_header_parser_ptr
Definition: ParseData.h:79
void setApplicationDataPtr(const std::shared_ptr< ApplicationData > &application_data_ptr)
Sets the application data.
Definition: Data.cpp:99
The GeneralSystemState class. It includes a summary of the current system state, the state of the saf...
std::shared_ptr< sick::data_processing::ParseDerivedValues > m_derived_values_parser_ptr
Definition: ParseData.h:80
A packetbuffer for the raw data from the sensor.
Definition: PacketBuffer.h:61
void setMeasurementDataInData(const datastructure::PacketBuffer &buffer, datastructure::Data &data) const
Definition: ParseData.cpp:86
void setDerivedValuesInData(const datastructure::PacketBuffer &buffer, datastructure::Data &data) const
Definition: ParseData.cpp:78
void setDataBlocksInData(const datastructure::PacketBuffer &buffer, datastructure::Data &data) const
Definition: ParseData.cpp:59
The data class containing all data blocks of a measurement.
Definition: Data.h:55
The application io class, bundles application input and output.
Class containing all IntrusionDatums.
Definition: IntrusionData.h:48
void setDataHeaderInData(const datastructure::PacketBuffer &buffer, datastructure::Data &data) const
Definition: ParseData.cpp:70
void setMeasurementDataPtr(const std::shared_ptr< MeasurementData > &measurement_data_ptr)
Sets the measurement data.
Definition: Data.cpp:79
void setDerivedValuesPtr(const std::shared_ptr< DerivedValues > &derived_values_ptr)
Sets the derived values.
Definition: Data.cpp:69
void setGeneralSystemStateInData(const datastructure::PacketBuffer &buffer, datastructure::Data &data) const
Definition: ParseData.cpp:95
std::shared_ptr< sick::data_processing::ParseApplicationData > m_application_data_parser_ptr
Definition: ParseData.h:84
ParseData()
Constructor of the parser.
Definition: ParseData.cpp:40
bool parseUDPSequence(const sick::datastructure::PacketBuffer buffer, sick::datastructure::Data &data) const
Parses the udp data transferred in the packet buffer. It will be parsed into the data reference...
Definition: ParseData.cpp:52
std::shared_ptr< sick::data_processing::ParseGeneralSystemState > m_general_system_state_parser_ptr
Definition: ParseData.h:82
Class containing all scanpoints of a single measurement.
std::shared_ptr< sick::data_processing::ReadWriteHelper > m_reader_ptr
Definition: ParseData.h:77
The DerivedValues class Includes the derived configuration of the measurement data channel...
Definition: DerivedValues.h:48
void setDataHeaderPtr(const std::shared_ptr< DataHeader > &data_header_ptr)
Sets the data header.
Definition: Data.cpp:48
Contains the content of the data header of a udp data packet.
Definition: DataHeader.h:46
void setApplicationDataInData(const datastructure::PacketBuffer &buffer, datastructure::Data &data) const
Definition: ParseData.cpp:112
void setGeneralSystemStatePtr(const std::shared_ptr< GeneralSystemState > &general_system_state_ptr)
Sets the general system state.
Definition: Data.cpp:58
void setIntrusionDataPtr(const std::shared_ptr< IntrusionData > &intrusion_data_ptr)
Sets the intrusion data.
Definition: Data.cpp:89
std::shared_ptr< sick::data_processing::ParseMeasurementData > m_measurement_data_parser_ptr
Definition: ParseData.h:81
std::shared_ptr< sick::data_processing::ParseIntrusionData > m_intrusion_data_parser_ptr
Definition: ParseData.h:83
void setIntrusionDataInData(const datastructure::PacketBuffer &buffer, datastructure::Data &data) const
Definition: ParseData.cpp:104


sick_safetyscanners
Author(s): Lennart Puck
autogenerated on Thu May 9 2019 02:41:08