LCOV - code coverage report
Current view: top level - cpp2ethernet/include/udp - IDataListener.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 1 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/IPAddress.h"
       6             : 
       7             : #include <platform/estdint.h>
       8             : 
       9             : namespace udp
      10             : {
      11             : class AbstractDatagramSocket;
      12             : 
      13             : /**
      14             :  * Interface for classes that want to receive data from an
      15             :  * AbstractDatagramSocket.
      16             :  *
      17             :  */
      18             : class IDataListener
      19             : {
      20             : protected:
      21             :     IDataListener();
      22             : 
      23             : public:
      24             :     IDataListener(IDataListener const&)            = delete;
      25             :     IDataListener& operator=(IDataListener const&) = delete;
      26             :     // [IDataListener]
      27             :     /**
      28             :      * callback that gets called when data has been received
      29             :      * \param  length  number of bytes received
      30             :      *
      31             :      * \note
      32             :      * It is expected that the data is read from the AbstractSocket within this
      33             :      * callback. The AbstractSocket may overwrite its internal buffers after
      34             :      * this callback is done.
      35             :      */
      36             :     virtual void dataReceived(
      37             :         AbstractDatagramSocket& socket,
      38             :         ::ip::IPAddress sourceAddress,
      39             :         uint16_t sourcePort,
      40             :         ::ip::IPAddress destinationAddress,
      41             :         uint16_t length)
      42             :         = 0;
      43             :     // [IDataListener]
      44             : };
      45             : 
      46             : /*
      47             :  * inline methods
      48             :  */
      49           2 : inline IDataListener::IDataListener() = default;
      50             : 
      51             : } /* namespace udp */

Generated by: LCOV version 1.14