LCOV - code coverage report
Current view: top level - src/audio/backend - i_audio_backend.h (source / functions) Coverage Total Hit
Test: merged.info Lines: 100.0 % 2 2
Test Date: 2026-06-07 15:51:50 Functions: 50.0 % 2 1

            Line data    Source code
       1              : #pragma once
       2              : 
       3              : #include <string>
       4              : #include <vector>
       5              : 
       6              : #include "audio/backend/audio_device_info.h"
       7              : 
       8              : namespace Amplitron {
       9              : 
      10              : class IAudioEngine;
      11              : 
      12          277 : class IAudioBackend {
      13              :    public:
      14          823 :     virtual ~IAudioBackend() = default;
      15              : 
      16              :     virtual bool initialize(IAudioEngine* engine) = 0;
      17              :     virtual void shutdown() = 0;
      18              :     virtual bool start() = 0;
      19              :     virtual void stop() = 0;
      20              : 
      21              :     virtual std::vector<AudioDeviceInfo> get_input_devices() const = 0;
      22              :     virtual std::vector<AudioDeviceInfo> get_output_devices() const = 0;
      23              : 
      24              :     virtual bool set_input_device(int device_index) = 0;
      25              :     virtual bool set_output_device(int device_index) = 0;
      26              : 
      27              :     virtual std::string get_input_device_name() const = 0;
      28              :     virtual std::string get_output_device_name() const = 0;
      29              : 
      30              :     virtual int get_sample_rate() const = 0;
      31              :     virtual int get_buffer_size() const = 0;
      32              : 
      33              :     virtual int get_input_device() const = 0;
      34              :     virtual int get_output_device() const = 0;
      35              : };
      36              : 
      37              : }  // namespace Amplitron
        

Generated by: LCOV version 2.0-1