LCOV - code coverage report
Current view: top level - uhallibs/src - formatters.cpp (source / functions) Coverage Total Hit
Test: code.result Lines: 0.0 % 33 0
Test Date: 2026-02-16 10:18:04 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              : 
       8            0 : PacketFmt::PacketFmt(const uint8_t* const aPtr, const size_t aNrBytes) :
       9            0 :   mData(1, std::pair<const uint8_t*, size_t>(aPtr, aNrBytes))
      10            0 : {}
      11              : 
      12              : 
      13            0 : PacketFmt::PacketFmt(const std::vector< std::pair<const uint8_t*, size_t> >& aData) :
      14            0 :   mData(aData)
      15            0 : {}
      16              : 
      17              : 
      18            0 : PacketFmt::~PacketFmt()
      19            0 : {}
      20              : 
      21              : 
      22            0 : std::ostream& operator<<(std::ostream& aStream, const PacketFmt& aPacket)
      23              : {
      24            0 :   std::ios::fmtflags lOrigFlags( aStream.flags() );
      25              : 
      26            0 :   size_t lNrBytesWritten = 0;
      27            0 :   for (size_t i = 0; i < aPacket.mData.size(); i++) {
      28            0 :     for (const uint8_t* lPtr = aPacket.mData.at(i).first; lPtr != (aPacket.mData.at(i).first + aPacket.mData.at(i).second); 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            0 : {}
      42              : 
      43            0 : DMAFmt::~DMAFmt()
      44            0 : {}
      45              : 
      46            0 : std::ostream& operator<<(std::ostream& aStream, const DMAFmt& aPacket)
      47              : {
      48            0 :   std::ios::fmtflags lOrigFlags( aStream.flags() );
      49              : 
      50            0 :   size_t lNrBytesWritten = 0;
      51            0 :   for (size_t i = 0; i < aPacket.mData.size(); i++) {
      52            0 :     for (const uint8_t* lPtr = aPacket.mData.at(i).first; lPtr != (aPacket.mData.at(i).first + aPacket.mData.at(i).second); lPtr++, lNrBytesWritten++) {
      53            0 :       if ((lNrBytesWritten & 63) == 0)
      54            0 :         aStream << std::endl << "   @ " << std::setw(3) << std::dec << (lNrBytesWritten >> 2) << " :  x";
      55            0 :       aStream << std::setw(2) << std::hex << uint16_t(*lPtr) << " ";
      56              :     }
      57              :   }
      58              : 
      59            0 :   aStream.flags( lOrigFlags );
      60            0 :   return aStream;
      61              : }
      62              : 
      63              : 
      64              : 
      65              : } // namespace uhal
        

Generated by: LCOV version 2.0-1