VisionaryDataStream.h
Go to the documentation of this file.
1 // -- BEGIN LICENSE BLOCK ----------------------------------------------
20 // -- END LICENSE BLOCK ------------------------------------------------
21 
22 #pragma once
23 
24 #include "TcpSocket.h"
25 #include "VisionaryData.h"
26 #include <memory>
27 
28 namespace visionary {
29 
31 {
32 public:
33  VisionaryDataStream(std::shared_ptr<VisionaryData> dataHandler);
35 
48  bool open(const std::string& hostname, std::uint16_t port);
49 
54  void close();
55 
56  bool syncCoLa() const;
57 
58  //-----------------------------------------------
59  // Receive a single blob from the connected device and store it in buffer.
60  // Returns true when valid frame completely received.
61  bool getNextFrame();
62 
63 private:
64  std::shared_ptr<VisionaryData> m_dataHandler;
65  std::unique_ptr<TcpSocket> m_pTransport;
66 
67  // Parse the Segment-Binary-Data (Blob data without protocol version and packet type).
68  // Returns true when parsing was successful.
69  bool parseSegmentBinaryData(const std::vector<uint8_t>::iterator itBuf);
70 };
71 
72 } // namespace visionary
TcpSocket.h
visionary::VisionaryDataStream::syncCoLa
bool syncCoLa() const
Definition: VisionaryDataStream.cpp:62
visionary::VisionaryDataStream::getNextFrame
bool getNextFrame()
Definition: VisionaryDataStream.cpp:86
visionary::VisionaryDataStream::VisionaryDataStream
VisionaryDataStream(std::shared_ptr< VisionaryData > dataHandler)
Definition: VisionaryDataStream.cpp:30
visionary
Definition: AuthenticationLegacy.h:25
VisionaryData.h
visionary::VisionaryDataStream::close
void close()
Definition: VisionaryDataStream.cpp:53
visionary::VisionaryDataStream::~VisionaryDataStream
~VisionaryDataStream()
Definition: VisionaryDataStream.cpp:35
visionary::VisionaryDataStream::parseSegmentBinaryData
bool parseSegmentBinaryData(const std::vector< uint8_t >::iterator itBuf)
Definition: VisionaryDataStream.cpp:125
visionary::VisionaryDataStream::m_pTransport
std::unique_ptr< TcpSocket > m_pTransport
Definition: VisionaryDataStream.h:65
visionary::VisionaryDataStream::m_dataHandler
std::shared_ptr< VisionaryData > m_dataHandler
Definition: VisionaryDataStream.h:64
visionary::VisionaryDataStream
Definition: VisionaryDataStream.h:30
visionary::VisionaryDataStream::open
bool open(const std::string &hostname, std::uint16_t port)
Definition: VisionaryDataStream.cpp:37


sick_safevisionary_base
Author(s):
autogenerated on Sat Oct 21 2023 02:24:26