LCOV - code coverage report
Current view: top level - uhallibs/src - formatters.cpp (source / functions) Coverage Total Hit
Test: code.result Lines: 0.0 % 35 0
Test Date: 2026-10-11 15:05:20 Functions: 0.0 % 7 0

            Line data    Source code
       1              : #include "uhallibs/formatters.hpp"
       2              : 
       3              : #include <iomanip> // for pair
       4              : 
       5              : namespace uhallibs {
       6              : 
       7            0 : PacketFmt::PacketFmt(const uint8_t* const aPtr, const size_t aNrBytes)
       8            0 :   : mData(1, std::pair<const uint8_t*, size_t>(aPtr, aNrBytes))
       9              : {
      10            0 : }
      11              : 
      12            0 : PacketFmt::PacketFmt(const std::vector<std::pair<const uint8_t*, size_t>>& aData)
      13            0 :   : mData(aData)
      14              : {
      15            0 : }
      16              : 
      17            0 : PacketFmt::~PacketFmt() {}
      18              : 
      19              : std::ostream&
      20            0 : operator<<(std::ostream& aStream, const PacketFmt& aPacket)
      21              : {
      22            0 :   std::ios::fmtflags lOrigFlags(aStream.flags());
      23              : 
      24            0 :   size_t lNrBytesWritten = 0;
      25            0 :   for (size_t i = 0; i < aPacket.mData.size(); i++) {
      26            0 :     for (const uint8_t* lPtr = aPacket.mData.at(i).first;
      27            0 :          lPtr != (aPacket.mData.at(i).first + aPacket.mData.at(i).second);
      28            0 :          lPtr++, lNrBytesWritten++) {
      29            0 :       if ((lNrBytesWritten & 3) == 0)
      30            0 :         aStream << std::endl << "   @ " << std::setw(3) << std::dec << (lNrBytesWritten >> 2) << " :  x";
      31            0 :       aStream << std::setw(2) << std::hex << uint16_t(*lPtr) << " ";
      32              :     }
      33              :   }
      34              : 
      35            0 :   aStream.flags(lOrigFlags);
      36            0 :   return aStream;
      37              : }
      38              : 
      39            0 : DMAFmt::DMAFmt(const uint8_t* const aPtr, const size_t aNrBytes)
      40            0 :   : mData(1, std::pair<const uint8_t*, size_t>(aPtr, aNrBytes))
      41              : {
      42            0 : }
      43              : 
      44            0 : DMAFmt::~DMAFmt() {}
      45              : 
      46              : std::ostream&
      47            0 : operator<<(std::ostream& aStream, const DMAFmt& aPacket)
      48              : {
      49            0 :   std::ios::fmtflags lOrigFlags(aStream.flags());
      50              : 
      51            0 :   size_t lNrBytesWritten = 0;
      52            0 :   for (size_t i = 0; i < aPacket.mData.size(); i++) {
      53            0 :     for (const uint8_t* lPtr = aPacket.mData.at(i).first;
      54            0 :          lPtr != (aPacket.mData.at(i).first + aPacket.mData.at(i).second);
      55            0 :          lPtr++, lNrBytesWritten++) {
      56            0 :       if ((lNrBytesWritten & 63) == 0)
      57            0 :         aStream << std::endl << "   @ " << std::setw(3) << std::dec << (lNrBytesWritten >> 2) << " :  x";
      58            0 :       aStream << std::setw(2) << std::hex << uint16_t(*lPtr) << " ";
      59              :     }
      60              :   }
      61              : 
      62            0 :   aStream.flags(lOrigFlags);
      63            0 :   return aStream;
      64              : }
      65              : 
      66              : } // namespace uhal
        

Generated by: LCOV version 2.0-1