LCOV - code coverage report
Current view: top level - cpp2ethernet/include/udp - DatagramPacket.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 5 5 100.0 %
Date: 2025-08-28 06:39:11 Functions: 0 0 -

          Line data    Source code
       1             : // Copyright 2025 Accenture.
       2             : 
       3             : #pragma once
       4             : 
       5             : #include "ip/IPEndpoint.h"
       6             : 
       7             : #include <platform/estdint.h>
       8             : 
       9             : namespace udp
      10             : {
      11             : /**
      12             :  * UDP datagram packet.
      13             :  */
      14             : class DatagramPacket
      15             : {
      16             : public:
      17             :     // [DatagramPacket]
      18             :     /**
      19             :      * Constructs a UDP datagram packet.
      20             :      * \param  data     array of data
      21             :      * \param  length   length of data
      22             :      * \param  address  target IPAddress
      23             :      * \param  port     target port
      24             :      */
      25             :     DatagramPacket(uint8_t const data[], uint16_t length, ::ip::IPAddress address, uint16_t port);
      26             :     DatagramPacket(uint8_t const data[], uint16_t length, ::ip::IPEndpoint const& endpoint);
      27             :     DatagramPacket(DatagramPacket const&)            = delete;
      28             :     DatagramPacket& operator=(DatagramPacket const&) = delete;
      29             : 
      30           1 :     uint8_t const* getData() const { return _data; }
      31             : 
      32           1 :     uint16_t getLength() const { return _length; }
      33             : 
      34           1 :     ::ip::IPEndpoint getEndpoint() const { return _endpoint; }
      35             : 
      36           2 :     ::ip::IPAddress getAddress() const { return _endpoint.getAddress(); }
      37             : 
      38           2 :     uint16_t getPort() const { return _endpoint.getPort(); }
      39             : 
      40             :     bool operator==(DatagramPacket const& other) const;
      41             :     // [DatagramPacket]
      42             : private:
      43             :     ::ip::IPEndpoint _endpoint;
      44             :     uint8_t const* _data;
      45             :     uint16_t _length;
      46             : };
      47             : 
      48             : } // namespace udp

Generated by: LCOV version 1.14