#ifndef __ICQ_TASK_REPORT_H #define __ICQ_TASK_REPORT_H #include #include "system.h" #include "icq_queue.h" #include "icq_configuration.h" #include "icq_timing_execution_event_enum.h" #include "icq_timing_execution_trace.h" struct icq_task_report_t { icq_timing_execution_trace_t* timing_execution_trace; }; typedef struct icq_task_report_t icq_task_report_t; icq_task_report_t* icq_task_report_init(void); void icq_task_report_add_event(icq_task_report_t* task_report, uint32_t event_type); void icq_task_report_add_event_with_param(icq_task_report_t* task_report, uint32_t event_type, uint8_t param_id); void icq_task_report_add_event_with_param_and_time(icq_task_report_t* task_report, uint32_t event_type, uint8_t param_id, uint64_t time); void icq_task_report_print_timing_execution_trace(uint32_t cpu, char* task_name, icq_task_report_t* task_report); void icq_task_report_print_timing_task_trace_id(uint32_t cpu, char* task_name, icq_queue_t* icq, uint32_t icq_cpu); #endif