Go to the source code of this file.
Classes | |
class | QS |
struct | QSpyId |
struct | QS_Filter |
struct | QS_TProbe |
class | QHsmDummy |
class | QActiveDummy |
Macros | |
#define | QS_INIT(arg_) (QS_onStartup(arg_)) |
#define | QS_EXIT() (QS_onCleanup()) |
#define | QS_OUTPUT() (QS_output()) |
#define | QS_RX_INPUT() (QS_rx_input()) |
#define | QS_GLB_FILTER(rec_) (QS_glbFilter_((int_fast16_t)(rec_))) |
#define | QS_LOC_FILTER(qs_id_) (QS_locFilter_((int_fast16_t)(qs_id_))) |
#define | QS_BEGIN_ID(rec_, qs_id_) |
#define | QS_END() |
#define | QS_FLUSH() (QS_onFlush()) |
#define | QS_BEGIN_INCRIT(rec_, qs_id_) |
#define | QS_END_INCRIT() |
#define | QS_GLB_CHECK_(rec_) |
#define | QS_LOC_CHECK_(qs_id_) |
#define | QS_REC_DONE() ((void)0) |
#define | QS_I8(width_, data_) |
#define | QS_U8(width_, data_) (QS_u8_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_U8_T, (data_))) |
#define | QS_I16(width_, data_) (QS_u16_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_I16_T, (data_))) |
#define | QS_U16(width_, data_) (QS_u16_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_U16_T, (data_))) |
#define | QS_I32(width_, data_) (QS_u32_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_I32_T, (data_))) |
#define | QS_U32(width_, data_) (QS_u32_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_U32_T, (data_))) |
#define | QS_I64(width_, data_) (QS_u64_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_I64_T, (data_))) |
#define | QS_U64(width_, data_) (QS_u64_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_U64_T, (data_))) |
#define | QS_F32(width_, data_) (QS_f32_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_F32_T, (data_))) |
#define | QS_F64(width_, data_) (QS_f64_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_F64_T, (data_))) |
#define | QS_STR(str_) (QS_str_fmt_((str_))) |
#define | QS_MEM(mem_, size_) (QS_mem_fmt_((mem_), (size_))) |
#define | QS_ENUM(group_, value_) |
#define | QS_OBJ(obj_) (QS_u32_fmt_(QS_OBJ_T, (uint32_t)(obj_))) |
#define | QS_FUN(fun_) (QS_u32_fmt_(QS_FUN_T, (uint32_t)(fun_))) |
#define | QS_SIG(sig_, obj_) |
#define | QS_SIG_DICTIONARY(sig_, obj_) (QS_sig_dict_pre_((QSignal)(sig_), (obj_), #sig_)) |
#define | QS_OBJ_DICTIONARY(obj_) (QS_obj_dict_pre_((obj_), #obj_)) |
#define | QS_OBJ_ARR_DICTIONARY(obj_, idx_) (QS_obj_arr_dict_pre_((obj_), (idx_), #obj_)) |
#define | QS_FUN_DICTIONARY(fun_) (QS_fun_dict_pre_((void (*)(void))(fun_), #fun_)) |
#define | QS_USR_DICTIONARY(rec_) (QS_usr_dict_pre_((rec_), #rec_)) |
#define | QS_ENUM_DICTIONARY(value_, group_) (QS_enum_dict_pre_((value_), (group_), #value_)) |
#define | QS_RX_PUT(b_) (QS_rxPut((b_))) |
#define | QS_TR_CRIT_ENTRY() |
#define | QS_TR_CRIT_EXIT() |
#define | QS_TR_ISR_ENTRY(isrnest, prio) |
#define | QS_ONLY(code_) (code_) |
#define | QS_ASSERTION(module_, id_, delay_) (QS_assertion_pre_((module_), (id_), (delay_))) |
#define | QS_EOD ((uint16_t)0xFFFFU) |
#define | QS_CMD ((uint8_t)7U) |
#define | QS_HEX_FMT ((uint8_t)0x0FU) |
#define | QS_CRIT_STAT QF_CRIT_STAT |
#define | QS_CRIT_ENTRY() QF_CRIT_ENTRY() |
#define | QS_CRIT_EXIT() QF_CRIT_EXIT() |
#define | QS_MEM_SYS() QF_MEM_SYS() |
#define | QS_MEM_APP() QF_MEM_APP() |
#define | QUTEST_ON_POST 124 |
#define | QS_TEST_PROBE_DEF(fun_) uint32_t const qs_tp_ = QS_getTestProbe_((void (*)(void))(fun_)); |
#define | QS_TEST_PROBE(code_) if (qs_tp_ != 0U) { code_ } |
#define | QS_TEST_PROBE_ID(id_, code_) if (qs_tp_ == (uint32_t)(id_)) { code_ } |
#define | QS_TEST_PAUSE() (QS_test_pause_()) |
Typedefs | |
typedef uint32_t | QSFun |
Enumerations | |
enum | QS_preType { QS_I8_ENUM_T , QS_U8_T , QS_I16_T , QS_U16_T , QS_I32_T , QS_U32_T , QS_F32_T , QS_F64_T , QS_STR_T , QS_MEM_T , QS_SIG_T , QS_OBJ_T , QS_FUN_T , QS_I64_T , QS_U64_T } |
Enumerates data elements for app-specific trace records. More... | |
Functions | |
void | QS_TR_ISR_EXIT (uint_fast8_t isrnest, uint_fast8_t prio) |
#define QS_GLB_FILTER | ( | rec_ | ) | (QS_glbFilter_((int_fast16_t)(rec_))) |
#define QS_LOC_FILTER | ( | qs_id_ | ) | (QS_locFilter_((int_fast16_t)(qs_id_))) |
#define QS_BEGIN_ID | ( | rec_, | |
qs_id_ | |||
) |
#define QS_END | ( | ) |
#define QS_BEGIN_INCRIT | ( | rec_, | |
qs_id_ | |||
) |
#define QS_GLB_CHECK_ | ( | rec_ | ) |
#define QS_LOC_CHECK_ | ( | qs_id_ | ) |
#define QS_I8 | ( | width_, | |
data_ | |||
) |
#define QS_U8 | ( | width_, | |
data_ | |||
) | (QS_u8_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_U8_T, (data_))) |
#define QS_I16 | ( | width_, | |
data_ | |||
) | (QS_u16_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_I16_T, (data_))) |
#define QS_U16 | ( | width_, | |
data_ | |||
) | (QS_u16_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_U16_T, (data_))) |
#define QS_I32 | ( | width_, | |
data_ | |||
) | (QS_u32_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_I32_T, (data_))) |
#define QS_U32 | ( | width_, | |
data_ | |||
) | (QS_u32_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_U32_T, (data_))) |
#define QS_I64 | ( | width_, | |
data_ | |||
) | (QS_u64_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_I64_T, (data_))) |
#define QS_U64 | ( | width_, | |
data_ | |||
) | (QS_u64_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_U64_T, (data_))) |
#define QS_F32 | ( | width_, | |
data_ | |||
) | (QS_f32_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_F32_T, (data_))) |
#define QS_F64 | ( | width_, | |
data_ | |||
) | (QS_f64_fmt_((uint8_t)(((width_) << 4)) | (uint8_t)QS_F64_T, (data_))) |
#define QS_MEM | ( | mem_, | |
size_ | |||
) | (QS_mem_fmt_((mem_), (size_))) |
#define QS_ENUM | ( | group_, | |
value_ | |||
) |
#define QS_OBJ | ( | obj_ | ) | (QS_u32_fmt_(QS_OBJ_T, (uint32_t)(obj_))) |
#define QS_FUN | ( | fun_ | ) | (QS_u32_fmt_(QS_FUN_T, (uint32_t)(fun_))) |
#define QS_SIG | ( | sig_, | |
obj_ | |||
) |
#define QS_SIG_DICTIONARY | ( | sig_, | |
obj_ | |||
) | (QS_sig_dict_pre_((QSignal)(sig_), (obj_), #sig_)) |
#define QS_OBJ_DICTIONARY | ( | obj_ | ) | (QS_obj_dict_pre_((obj_), #obj_)) |
#define QS_OBJ_ARR_DICTIONARY | ( | obj_, | |
idx_ | |||
) | (QS_obj_arr_dict_pre_((obj_), (idx_), #obj_)) |
#define QS_FUN_DICTIONARY | ( | fun_ | ) | (QS_fun_dict_pre_((void (*)(void))(fun_), #fun_)) |
#define QS_USR_DICTIONARY | ( | rec_ | ) | (QS_usr_dict_pre_((rec_), #rec_)) |
#define QS_ENUM_DICTIONARY | ( | value_, | |
group_ | |||
) | (QS_enum_dict_pre_((value_), (group_), #value_)) |
#define QS_TR_ISR_ENTRY | ( | isrnest, | |
prio | |||
) |
#define QS_ASSERTION | ( | module_, | |
id_, | |||
delay_ | |||
) | (QS_assertion_pre_((module_), (id_), (delay_))) |
#define QS_TEST_PROBE_DEF | ( | fun_ | ) | uint32_t const qs_tp_ = QS_getTestProbe_((void (*)(void))(fun_)); |
#define QS_TEST_PROBE_ID | ( | id_, | |
code_ | |||
) | if (qs_tp_ == (uint32_t)(id_)) { code_ } |
enum QS_preType |
Enumerates data elements for app-specific trace records.
void QS_TR_ISR_EXIT | ( | uint_fast8_t | isrnest, |
uint_fast8_t | prio | ||
) |