LCOV - code coverage report
Current view: top level - libs/bsw/cpp2ethernet/include/udp - DatagramPacket.h (source / functions) Coverage Total Hit
Test: coverage.info Lines: 100.0 % 5 5
Test Date: 2026-06-18 08:29:03 Functions: 100.0 % 5 5

            Line data    Source code
       1              : /********************************************************************************
       2              :  * Copyright (c) 2025 Accenture
       3              :  *
       4              :  * This program and the accompanying materials are made available under the
       5              :  * terms of the Apache License Version 2.0 which is available at
       6              :  * https://www.apache.org/licenses/LICENSE-2.0
       7              :  *
       8              :  * SPDX-License-Identifier: Apache-2.0
       9              :  ********************************************************************************/
      10              : 
      11              : #pragma once
      12              : 
      13              : #include "ip/IPEndpoint.h"
      14              : 
      15              : #include <platform/estdint.h>
      16              : 
      17              : namespace udp
      18              : {
      19              : /**
      20              :  * UDP datagram packet.
      21              :  */
      22              : class DatagramPacket
      23              : {
      24              : public:
      25              :     // [DatagramPacket]
      26              :     /**
      27              :      * Constructs a UDP datagram packet.
      28              :      * \param  data     array of data
      29              :      * \param  length   length of data
      30              :      * \param  address  target IPAddress
      31              :      * \param  port     target port
      32              :      */
      33              :     DatagramPacket(uint8_t const data[], uint16_t length, ::ip::IPAddress address, uint16_t port);
      34              :     DatagramPacket(uint8_t const data[], uint16_t length, ::ip::IPEndpoint const& endpoint);
      35              :     DatagramPacket(DatagramPacket const&)            = delete;
      36              :     DatagramPacket& operator=(DatagramPacket const&) = delete;
      37              : 
      38           76 :     uint8_t const* getData() const { return _data; }
      39              : 
      40           76 :     uint16_t getLength() const { return _length; }
      41              : 
      42           82 :     ::ip::IPEndpoint getEndpoint() const { return _endpoint; }
      43              : 
      44            3 :     ::ip::IPAddress getAddress() const { return _endpoint.getAddress(); }
      45              : 
      46            2 :     uint16_t getPort() const { return _endpoint.getPort(); }
      47              : 
      48              :     bool operator==(DatagramPacket const& other) const;
      49              :     // [DatagramPacket]
      50              : private:
      51              :     ::ip::IPEndpoint _endpoint;
      52              :     uint8_t const* _data;
      53              :     uint16_t _length;
      54              : };
      55              : 
      56              : } // namespace udp
        

Generated by: LCOV version 2.0-1