ifw-fgf 2.0.0
 
Loading...
Searching...
No Matches
mudpiCreator.hpp
Go to the documentation of this file.
1
8
9// This class was copied from the MELT CS repository.
10
11#ifndef FGF_COM_MUDPI_CREATOR_HPP_H_
12#define FGF_COM_MUDPI_CREATOR_HPP_H_
13
14#define BOOST_BIND_NO_PLACEHOLDERS
15
16#include <cstdint>
17#include <vector>
18
19#include <mudpiif/MudpiPacket.hpp>
20#include <hrtcpif/HrtcpCommonPacket.hpp>
21#include <hrtcpif/HrtcpLeaderPacket.hpp>
22#include <hrtcpif/HrtcpTrailerPacket.hpp>
23#include <hrtcpif/HrtcpPayloadPacket.hpp>
24
25namespace ifw::fgf::common {
26
37 public:
38
39 MudpiCreator(uint32_t mudpi_topic_id,
40 uint16_t mudpi_component_id,
41 uint32_t starting_mudpi_sample_id,
42 hrtcpif::SimSource hrtcp_sim_source,
43 hrtcpif::Endianness hrtcp_endianness);
45
50
51 std::vector<mudpiif::mudpiPacketJumbo>&
52 getMudpiPackets(std::vector<unsigned char>& raw_image_data,
53 int bytes_per_pixel,
54 double timestamp);
55 void increaseSampleId();
56
57 private:
58 uint32_t getSampleId() { return m_mudpi_sample_identity; }
59
60 std::vector<mudpiif::mudpiPacketJumbo> m_mudpi_packets;
61
62 uint32_t m_mudpi_sample_identity;
63 uint32_t m_mudpi_topic_identity;
64 uint16_t m_mudpi_component_identity;
65 hrtcpif::SimSource m_hrtcp_sim_source;
66 hrtcpif::Endianness m_hrtcp_endianness;
67
68 mudpiif::mudpiPacketJumbo
69 assembleMudpiLeadingPacket(std::vector<unsigned char>& raw_image_data, int bytes_per_pixel);
70 mudpiif::mudpiPacketJumbo
71 assembleMudpiTrailingPacket(std::vector<unsigned char>& raw_image_data);
72 void assembleMudpiPayloadPackets(std::vector<mudpiif::mudpiPacketJumbo>& mudpi_packets,
73 std::vector<unsigned char>& raw_image_data,
74 int bytes_per_pixel,
75 double timestamp);
76
77 };
78
79}
80
81#endif /* FGF_COM_MUDPI_CREATOR_HPP_H_ */
std::vector< mudpiif::mudpiPacketJumbo > & getMudpiPackets(std::vector< unsigned char > &raw_image_data, int bytes_per_pixel, double timestamp)
Definition mudpiCreator.cpp:34
MudpiCreator(MudpiCreator &&)=delete
MudpiCreator(uint32_t mudpi_topic_id, uint16_t mudpi_component_id, uint32_t starting_mudpi_sample_id, hrtcpif::SimSource hrtcp_sim_source, hrtcpif::Endianness hrtcp_endianness)
Constructor for the MudpiCreator class.
Definition mudpiCreator.cpp:14
void increaseSampleId()
Definition mudpiCreator.cpp:173
MudpiCreator(MudpiCreator &)=delete
Disables unused constructors and operators.
MudpiCreator & operator=(MudpiCreator &)=delete
Definition binarySemaphore.hpp:45