LCOV - code coverage report
Current view: top level - AP_HAL_Linux - SerialDevice.h (source / functions) Hit Total Coverage
Test: lcov.info Lines: 1 5 20.0 %
Date: 2026-09-09 11:02:08 Functions: 1 5 20.0 %

          Line data    Source code
       1             : #pragma once
       2             : 
       3             : #include <stdint.h>
       4             : #include <stdlib.h>
       5             : 
       6             : #include "AP_HAL_Linux.h"
       7             : 
       8             : class SerialDevice {
       9             : public: 
      10         480 :     virtual ~SerialDevice() {}
      11             : 
      12             :     virtual bool open() = 0;
      13             :     virtual bool close() = 0;
      14             :     virtual ssize_t write(const uint8_t *buf, uint16_t n) = 0;
      15             :     virtual ssize_t read(uint8_t *buf, uint16_t n) = 0;
      16             :     virtual void set_blocking(bool blocking) = 0;
      17             :     virtual void set_speed(uint32_t speed) = 0;
      18           0 :     virtual AP_HAL::UARTDriver::flow_control get_flow_control(void) { return AP_HAL::UARTDriver::FLOW_CONTROL_ENABLE; }
      19           0 :     virtual void set_flow_control(AP_HAL::UARTDriver::flow_control flow_control_setting)
      20             :     {
      21             :         /* most devices simply ignore this setting */
      22           0 :     };
      23             : 
      24             :     /* Depends on lower level to implement, most devices are fine with defaults */
      25           0 :     virtual void set_parity(int v) { }
      26             : };

Generated by: LCOV version 1.14