LCOV - code coverage report
Current view: top level - AP_HAL/utility - BetterStream.cpp (source / functions) Hit Total Coverage
Test: lcov.info Lines: 22 22 100.0 %
Date: 2026-09-09 11:02:08 Functions: 5 5 100.0 %

          Line data    Source code
       1             : #include "BetterStream.h"
       2             : 
       3             : #include "print_vprintf.h"
       4             : 
       5       12707 : void AP_HAL::BetterStream::printf(const char *fmt, ...)
       6             : {
       7             :     va_list ap;
       8       12707 :     va_start(ap, fmt);
       9       12707 :     vprintf(fmt, ap);
      10       12707 :     va_end(ap);
      11       12707 : }
      12             : 
      13       12823 : void AP_HAL::BetterStream::vprintf(const char *fmt, va_list ap)
      14             : {
      15       12823 :     print_vprintf(this, fmt, ap);
      16       12823 : }
      17             : 
      18           4 : size_t AP_HAL::BetterStream::write(const char *str)
      19             : {
      20           4 :     return write((const uint8_t *)str, strlen(str));
      21             : }
      22             : 
      23          16 : int16_t AP_HAL::BetterStream::read()
      24             : {
      25             :     uint8_t b;
      26          16 :     if (!read(b)) {
      27           6 :         return -1;
      28             :     }
      29          10 :     return b;
      30             : }
      31             : 
      32           4 : ssize_t AP_HAL::BetterStream::read(uint8_t *buffer, uint16_t count)
      33             : {
      34           4 :     size_t offset = 0;
      35          12 :     while (count--) {
      36          10 :         const int16_t x = read();
      37          10 :         if (x == -1) {
      38           2 :             return offset;
      39             :         }
      40           8 :         buffer[offset++] = (uint8_t)x;
      41             :     }
      42           2 :     return offset;
      43             : }

Generated by: LCOV version 1.14