VisionarySData.h
Go to the documentation of this file.
1 //
2 // Copyright (c) 2023 SICK AG, Waldkirch
3 //
4 // SPDX-License-Identifier: Unlicense
5 
6 #pragma once
7 
8 #include "VisionaryData.h"
9 
10 #include <cstddef> // for size_t
11 #include <cstdint>
12 #include <string>
13 #include <vector>
14 
15 namespace visionary {
16 
18 {
19 public:
21  ~VisionarySData() override;
22 
23  //-----------------------------------------------
24  // Getter Functions
25  // Gets the Z distance map
26  const std::vector<std::uint16_t>& getZMap() const;
27 
28  // Gets the intensity map
29  const std::vector<std::uint32_t>& getRGBAMap() const;
30 
31  // Gets the state map
32  const std::vector<std::uint16_t>& getConfidenceMap() const;
33 
34  // Calculate and return the Point Cloud in the camera perspective. Units are in meters.
35  void generatePointCloud(std::vector<PointXYZ>& pointCloud) override;
36 
37 protected:
38  //-----------------------------------------------
39  // functions for parsing received blob
40 
41  // Parse the XML Metadata part to get information about the sensor and the following image data.
42  // This function uses boost library. An other XML parser is needed to remove boost from source.
43  // Returns true when parsing was successful.
44  bool parseXML(const std::string& xmlString, std::uint32_t changeCounter) override;
45 
46  // Parse the Binary data part to extract the image data.
47  // Returns true when parsing was successful.
48  bool parseBinaryData(std::vector<uint8_t>::iterator itBuf, std::size_t size) override;
49 
50 private:
53 
54  // Pointers to the image data
55  std::vector<std::uint16_t> m_zMap;
56  std::vector<std::uint32_t> m_rgbaMap;
57  std::vector<std::uint16_t> m_confidenceMap;
58 };
59 
60 } // namespace visionary
visionary
Definition: MD5.cpp:44
visionary::VisionarySData::VisionarySData
VisionarySData()
Definition: VisionarySData.cpp:36
visionary::VisionarySData::parseBinaryData
bool parseBinaryData(std::vector< uint8_t >::iterator itBuf, std::size_t size) override
Definition: VisionarySData.cpp:107
visionary::VisionarySData::getConfidenceMap
const std::vector< std::uint16_t > & getConfidenceMap() const
Definition: VisionarySData.cpp:233
visionary::VisionarySData::m_zMap
std::vector< std::uint16_t > m_zMap
Definition: VisionarySData.h:55
visionary::VisionarySData::m_confidenceMap
std::vector< std::uint16_t > m_confidenceMap
Definition: VisionarySData.h:57
VisionaryData.h
visionary::VisionarySData::m_confidenceByteDepth
std::size_t m_confidenceByteDepth
Definition: VisionarySData.h:52
visionary::VisionaryData
Definition: VisionaryData.h:49
visionary::VisionarySData::generatePointCloud
void generatePointCloud(std::vector< PointXYZ > &pointCloud) override
Definition: VisionarySData.cpp:218
visionary::VisionarySData::m_zByteDepth
std::size_t m_zByteDepth
Byte depth of images.
Definition: VisionarySData.h:52
visionary::VisionarySData::getZMap
const std::vector< std::uint16_t > & getZMap() const
Definition: VisionarySData.cpp:223
visionary::VisionarySData
Definition: VisionarySData.h:17
visionary::VisionarySData::getRGBAMap
const std::vector< std::uint32_t > & getRGBAMap() const
Definition: VisionarySData.cpp:228
visionary::VisionarySData::m_rgbaByteDepth
std::size_t m_rgbaByteDepth
Definition: VisionarySData.h:52
visionary::VisionarySData::m_rgbaMap
std::vector< std::uint32_t > m_rgbaMap
Definition: VisionarySData.h:56
visionary::VisionarySData::~VisionarySData
~VisionarySData() override
visionary::VisionarySData::parseXML
bool parseXML(const std::string &xmlString, std::uint32_t changeCounter) override
Definition: VisionarySData.cpp:42


sick_visionary_ros
Author(s): SICK AG TechSupport 3D Snapshot
autogenerated on Thu Feb 8 2024 03:56:19