LCOV - code coverage report
Current view: top level - Interfaces/Inc - IRTOS.hpp (source / functions) Coverage Total Hit
Test: filtered_coverage.info Lines: 100.0 % 1 1
Test Date: 2026-03-21 17:55:27 Functions: 50.0 % 2 1

            Line data    Source code
       1              : #ifndef I_RTOS_HPP
       2              : #define I_RTOS_HPP
       3              : 
       4              : #include <stdint.h>
       5              : 
       6              : namespace FreeRTOS_Cpp {
       7              :     class IRTOS {
       8              :     public:
       9           10 :         virtual ~IRTOS() = default;
      10              : 
      11              :         // delay, tick
      12              :         virtual void delay(uint32_t ms) = 0;
      13              :         virtual uint32_t getTickCount(void) = 0;
      14              : 
      15              :         //for Task Monitoring
      16              :         virtual void registerTask(void* handle, const char* name) = 0;
      17              :         virtual uint32_t getRegisteredTaskCount() = 0;
      18              :         virtual bool getRegisteredTaskInfo(uint32_t index, const char** outName, void** outHandle) = 0;
      19              :         virtual uint32_t getStackHighWaterMark(void* handle) = 0;
      20              : 
      21              :         //Events
      22              :         virtual uint32_t getEventBits(void* handle) = 0;
      23              :         virtual void setEventBits(void* handle, uint32_t bits) = 0;
      24              :         virtual void clearEventBits(void* handle, uint32_t bits) = 0;
      25              :         virtual uint32_t WaitBits(void* handle, uint32_t bits, bool clearOnExit, bool waitForAllBits, uint32_t tickTowait) = 0;
      26              :         
      27              :         // --- Mutex / Semaphore Interface ---
      28              :         virtual bool takeMutex(void* handle, uint32_t timeoutMs) = 0;
      29              :         virtual bool giveMutex(void* handle) = 0;
      30              :         virtual bool giveSemaphoreFromISR(void* handle, bool* higherPriorityTaskWoken) = 0;
      31              : 
      32              :         // --- Queue Interface ---
      33              :         virtual bool queueSend(void* handle, const void* item, uint32_t timeoutMs) = 0;
      34              :         virtual bool queueSendFromISR(void* handle, const void* item, bool* higherPriorityTaskWoken) = 0;
      35              :         virtual bool queueReceive(void* handle, void* buffer, uint32_t timeoutMs) = 0;
      36              :     };
      37              : }
      38              : #endif
        

Generated by: LCOV version 2.0-1