Linux Face / QPFramework
Embed: (wiki syntax)

« Back to documentation index

qs.h File Reference

qs.h File Reference

QS/C++ platform-independent public interface. More...

Go to the source code of this file.

Data Structures

class  QS
 Quantum Spy logging facilities. More...

Typedefs

typedef uint8_t QSTimeCtr
 The type of the QS time stamp.

Enumerations

enum  QSpyRecords { ,
  QS_QEP_STATE_ENTRY, QS_QEP_STATE_EXIT, QS_QEP_STATE_INIT, QS_QEP_INIT_TRAN,
  QS_QEP_INTERN_TRAN, QS_QEP_TRAN, QS_QEP_IGNORED, QS_QEP_DISPATCH ,
  QS_QF_ACTIVE_ADD, QS_QF_ACTIVE_REMOVE, QS_QF_ACTIVE_SUBSCRIBE, QS_QF_ACTIVE_UNSUBSCRIBE,
  QS_QF_ACTIVE_POST_FIFO, QS_QF_ACTIVE_POST_LIFO, QS_QF_ACTIVE_GET, QS_QF_ACTIVE_GET_LAST,
  QS_QF_EQUEUE_INIT, QS_QF_EQUEUE_POST_FIFO, QS_QF_EQUEUE_POST_LIFO, QS_QF_EQUEUE_GET,
  QS_QF_EQUEUE_GET_LAST, QS_QF_MPOOL_INIT, QS_QF_MPOOL_GET, QS_QF_MPOOL_PUT,
  QS_QF_PUBLISH , QS_QF_NEW, QS_QF_GC_ATTEMPT, QS_QF_GC,
  QS_QF_TICK, QS_QF_TIMEEVT_ARM, QS_QF_TIMEEVT_AUTO_DISARM, QS_QF_TIMEEVT_DISARM_ATTEMPT,
  QS_QF_TIMEEVT_DISARM, QS_QF_TIMEEVT_REARM, QS_QF_TIMEEVT_POST , QS_QF_INT_LOCK,
  QS_QF_INT_UNLOCK, QS_QF_ISR_ENTRY, QS_QF_ISR_EXIT , QS_QK_MUTEX_LOCK,
  QS_QK_MUTEX_UNLOCK, QS_QK_SCHEDULE , QS_SIG_DICTIONARY, QS_OBJ_DICTIONARY,
  QS_FUN_DICTIONARY, QS_ASSERT , QS_USER
}
 

Quantum Spy record types.

More...
enum  QSType {
  QS_I8_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
}
 

Enumerates data formats recognized by QS.

More...

Variables

uint8_t QF_intLockNest_
 interrupt-lock nesting level

Detailed Description

QS/C++ platform-independent public interface.

This header file must be included directly or indirectly in all modules (*.cpp files) that use QS/C++.

Definition in file qs.h.


Typedef Documentation

typedef uint32_t QSTimeCtr

The type of the QS time stamp.

This type determines the dynamic range of QS time stamps

Definition at line 152 of file qs.h.


Enumeration Type Documentation

Quantum Spy record types.

This enumeration specifies the record types used in the QP components. You can specify your own record types starting from QS_USER offset. Currently, the maximum of all records cannot exceed 256.

See also:
QS::filterOn()/QS_FILTER_ON and QS::filterOff()/QS_FILTER_OFF
Enumerator:
QS_QEP_STATE_ENTRY 

a state was entered

QS_QEP_STATE_EXIT 

a state was exited

QS_QEP_STATE_INIT 

an intial transition was taken in a state

QS_QEP_INIT_TRAN 

the top-most initial transition was taken

QS_QEP_INTERN_TRAN 

an internal transition was taken

QS_QEP_TRAN 

a regular transition was taken

QS_QEP_IGNORED 

an event was ignored (silently discarded)

QS_QEP_DISPATCH 

an event was dispatched (begin of RTC step)

QS_QF_ACTIVE_ADD 

an AO has been added to QF (started)

QS_QF_ACTIVE_REMOVE 

an AO has been removed from QF (stopped)

QS_QF_ACTIVE_SUBSCRIBE 

an AO subscribed to an event

QS_QF_ACTIVE_UNSUBSCRIBE 

an AO unsubscribed to an event

QS_QF_ACTIVE_POST_FIFO 

an event was posted (FIFO) directly to an AO

QS_QF_ACTIVE_POST_LIFO 

an event was posted (LIFO) directly to an AO

QS_QF_ACTIVE_GET 

an AO got an event and its queue is still not empty

QS_QF_ACTIVE_GET_LAST 

an AO got an event and its queue is empty

QS_QF_EQUEUE_INIT 

an event queue was initialized

QS_QF_EQUEUE_POST_FIFO 

an event was posted (FIFO) to a raw queue

QS_QF_EQUEUE_POST_LIFO 

an event was posted (LIFO) to a raw queue

QS_QF_EQUEUE_GET 

get an event and queue still not empty

QS_QF_EQUEUE_GET_LAST 

get the last event from the queue

QS_QF_MPOOL_INIT 

a memory pool was initialized

QS_QF_MPOOL_GET 

a memory block was removed from a memory pool

QS_QF_MPOOL_PUT 

a memory block was returned to a memory pool

QS_QF_PUBLISH 

an event was truly published to some subscribers

QS_QF_NEW 

new event creation

QS_QF_GC_ATTEMPT 

garbage collection attempt

QS_QF_GC 

garbage collection

QS_QF_TICK 

QF::tick() was called.

QS_QF_TIMEEVT_ARM 

a time event was armed

QS_QF_TIMEEVT_AUTO_DISARM 

a time event expired and was disarmed

QS_QF_TIMEEVT_DISARM_ATTEMPT 

an attempt to disarmed a disarmed tevent

QS_QF_TIMEEVT_DISARM 

true disarming of an armed time event

QS_QF_TIMEEVT_REARM 

rearming of a time event

QS_QF_TIMEEVT_POST 

a time event posted itself directly to an AO

QS_QF_INT_LOCK 

interrupts were locked

QS_QF_INT_UNLOCK 

interrupts were unlocked

QS_QF_ISR_ENTRY 

an ISR was entered

QS_QF_ISR_EXIT 

an ISR was exited

QS_QK_MUTEX_LOCK 

the QK mutex was locked

QS_QK_MUTEX_UNLOCK 

the QK mutex was unlocked

QS_QK_SCHEDULE 

the QK scheduler scheduled a new task to execute

QS_SIG_DICTIONARY 

signal dictionary entry

QS_OBJ_DICTIONARY 

object dictionary entry

QS_FUN_DICTIONARY 

function dictionary entry

QS_ASSERT 

assertion fired in the code

QS_USER 

the first record available for user QS records

Definition at line 49 of file qs.h.

enum QSType

Enumerates data formats recognized by QS.

QS uses this enumeration is used only internally for the formatted user data elements.

Enumerator:
QS_I8_T 

signed 8-bit integer format

QS_U8_T 

unsigned 8-bit integer format

QS_I16_T 

signed 16-bit integer format

QS_U16_T 

unsigned 16-bit integer format

QS_I32_T 

signed 32-bit integer format

QS_U32_T 

unsigned 32-bit integer format

QS_F32_T 

32-bit floating point format

QS_F64_T 

64-bit floating point format

QS_STR_T 

zero-terminated ASCII string format

QS_MEM_T 

up to 255-bytes memory block format

QS_SIG_T 

event signal format

QS_OBJ_T 

object pointer format

QS_FUN_T 

function pointer format

Definition at line 760 of file qs.h.


Variable Documentation

uint8_t QF_intLockNest_

interrupt-lock nesting level

Note:
Not to be used by Clients directly, only in ports of QF

Definition at line 40 of file qf_act.cpp.