MF_EVENT_KIND Enumeration

MF_EVENT_KIND is an enumeration that represents various kinds of monitoring events.

Syntax

Copy
typedef enum _MF_EVENT_KIND {MF_EVENT_KIND_RESERVED = 0,  
    MF_EVENT_KIND_CRITICAL_SECTION_DELETE,                       // 2
    MF_EVENT_KIND_CRITICAL_SECTION_ENTER,                        // 3
    MF_EVENT_KIND_CRITICAL_SECTION_INIT,                         // 4
    MF_EVENT_KIND_CRITICAL_SECTION_LEAVE,                        // 5
    MF_EVENT_KIND_CUSTOM,                                        // 6
    MF_EVENT_KIND_DATALOST,                                      // 7
    MF_EVENT_KIND_EVENT_CREATE,                                  // 8
    MF_EVENT_KIND_EVENT_DESTROY,                                 // 9
    MF_EVENT_KIND_EVENT_OPEN,                                    // 10
    MF_EVENT_KIND_EXCEPTION_INTERRUPT,                           // 11
    MF_EVENT_KIND_FAST_SEMAPHORE_ACQUIRE,                        // 12
    MF_EVENT_KIND_FAST_SEMAPHORE_INIT,                           // 13
    MF_EVENT_KIND_FAST_SEMAPHORE_RELEASE,                        // 14
    MF_EVENT_KIND_FAST_SEMAPHORE_RELEASE_ALL,                    // 15
    MF_EVENT_KIND_HANDLE_CLOSE,                                  // 16
    MF_EVENT_KIND_HEAP_ALLOC,                                    // 17
    MF_EVENT_KIND_HEAP_ALLOC_FAIL,                               // 18
    MF_EVENT_KIND_HEAP_CREATE,                                   // 19
    MF_EVENT_KIND_HEAP_DESTROY,                                  // 20
    MF_EVENT_KIND_HEAP_FREE,                                     // 21
    MF_EVENT_KIND_IDEAL_PROCESSOR_SET,                           // 22
    MF_EVENT_KIND_INTERRUPT_LINEBASED_ATTACH,                    // 23
    MF_EVENT_KIND_INTERRUPT_LINEBASED_RELEASE,                   // 24
    MF_EVENT_KIND_INTERRUPT_MESSAGEBASED_ATTACH,                 // 25
    MF_EVENT_KIND_INTERRUPT_MESSAGEBASED_RELEASE,                // 26
    MF_EVENT_KIND_IST_HANDLER,                                   // 27
    MF_EVENT_KIND_LOCAL_MEMORY_ALLOC,                            // 28
    MF_EVENT_KIND_LOCAL_MEMORY_ALLOC_FAIL,                       // 29
    MF_EVENT_KIND_LOCAL_MEMORY_FREE,                             // 30
    MF_EVENT_KIND_MARKER,                                        // 31
    MF_EVENT_KIND_MEMORY_MAP,                                    // 32
    MF_EVENT_KIND_MEMORY_UNMAP,                                  // 33
    MF_EVENT_KIND_MODULE_LOAD,                                   // 34
    MF_EVENT_KIND_MODULE_UNLOAD,                                 // 35
    MF_EVENT_KIND_MUTEX_CREATE,                                  // 36
    MF_EVENT_KIND_MUTEX_DESTROY,                                 // 37
    MF_EVENT_KIND_MUTEX_OPEN,                                    // 38
    MF_EVENT_KIND_MUTEX_RELEASE,                                 // 39
    MF_EVENT_KIND_PRIORITY_DEMOTION,                             // 40
    MF_EVENT_KIND_PRIORITY_PROMOTION,                            // 41
    MF_EVENT_KIND_PROCESS_AFFINITY_MASK_SET,                     // 42
    MF_EVENT_KIND_PROCESS_CREATE,                                // 43
    MF_EVENT_KIND_PROCESS_DESTROY,                               // 44
    MF_EVENT_KIND_PROCESS_OPEN,                                  // 45
    MF_EVENT_KIND_EVENT_PULSE,                                   // 46
    MF_EVENT_KIND_EVENT_RESET,                                   // 47
    MF_EVENT_KIND_THREAD_RESUME,                                 // 48
    MF_EVENT_KIND_SEMAPHORE_CREATE,                              // 49
    MF_EVENT_KIND_SEMAPHORE_DESTROY,                             // 50
    MF_EVENT_KIND_SEMAPHORE_OPEN,                                // 51
    MF_EVENT_KIND_SEMAPHORE_RELEASE,                             // 52
    MF_EVENT_KIND_EVENT_SET,                                     // 53
    MF_EVENT_KIND_UNHANDLED_EXCEPTION_FILTER_SET,                // 54
    MF_EVENT_KIND_SHARED_MEMORY_CREATE,                          // 55
    MF_EVENT_KIND_SHARED_MEMORY_DESTROY,                         // 56
    MF_EVENT_KIND_SHARED_MEMORY_OPEN,                            // 57
    MF_EVENT_KIND_SHUTDOWN_HANDLER_CREATE,                       // 58
    MF_EVENT_KIND_SHUTDOWN_HANDLER_DESTROY,                      // 59
    MF_EVENT_KIND_SUBSYSTEM_STOP,                                // 60
    MF_EVENT_KIND_THREAD_SUSPEND,                                // 61
    MF_EVENT_KIND_THREAD_AFFINITY_MASK_SET,                      // 62
    MF_EVENT_KIND_THREAD_CREATE,                                 // 63
    MF_EVENT_KIND_THREAD_DESTROY,                                // 64
    MF_EVENT_KIND_THREAD_PRIORITY_SET,                           // 65
    MF_EVENT_KIND_THREAD_QUANTUM_SET,                            // 66
    MF_EVENT_KIND_THREAD_SLEEP,                                  // 67
    MF_EVENT_KIND_TIMER_CANCEL,                                  // 68
    MF_EVENT_KIND_TIMER_CREATE,                                  // 69
    MF_EVENT_KIND_TIMER_DESTROY,                                 // 70
    MF_EVENT_KIND_TIMER_EXPIRATION,                              // 71
    MF_EVENT_KIND_TIMER_SET,                                     // 72
    MF_EVENT_KIND_TIME_QUANTUM_EXPIRE,                           // 73
    MF_EVENT_KIND_TLS_ALLOC,                                     // 74
    MF_EVENT_KIND_TLS_FREE,                                      // 75
    MF_EVENT_KIND_UNHANDLED_EXCEPTION_FILTER_CALL,               // 76
    MF_EVENT_KIND_WFMOEX_RETURN,                                 // 77
    MF_EVENT_KIND_WFMOEX_WAIT,                                   // 78
    MF_EVENT_KIND_WFSOEX_RETURN,                                 // 79
    MF_EVENT_KIND_WFSOEX_WAIT,                                   // 80
    MF_EVENT_KIND_TLS_FREE_FAIL,                                 // 81
    MF_EVENT_KIND_HEAP_FREE_FAIL,                                // 82
    MF_EVENT_KIND_LOCAL_MEMORY_FREE_FAIL,                        // 83
    MF_EVENT_KIND_FILE_CREATE,                                   // 84
    MF_EVENT_KIND_FILE_DESTROY,                                  // 85
    MF_EVENT_KIND_SRI_TO_WINDOWS,                                // 86 
    MF_EVENT_KIND_SRI_TO_WINDOWS_RETURN,                         // 87
    MF_EVENT_KIND_THREAD_TERMINATE,                              // 88
    MF_EVENT_KIND_THREAD_OPEN,                                   // 89
    MF_EVENT_KIND_CLOS_SET,                                      // 90
    MF_EVENT_KIND_WATCHDOG_RESET,                                // 91
    MF_EVENT_KIND_HEAP_REALLOC,                                  // 92
    MF_EVENT_KIND_MAX
} MF_EVENT_KIND;

Constants

See Event Classes for information on the action(s) that cause each event to occur.

If monitoring is not enabled, MONITOR_CONTROL_ENABLE_EVENTS and MONITOR_CONTROL_DISABLE_EVENTS will fail with error ERROR_NOT_READY.

Session triggers cannot be set for specific custom events. Attempts to create a session trigger from monitor event MF_EVENT_KIND_CUSTOM will fail with error code RT_ERROR_CUSTOM_TRIGGER_DISALLOWED.

Requirements

Minimum supported version Header Library

wRTOS 1.0 SDK

RtApi.h

RtApi.lib (Windows), Startup.lib (RTSS)

See Also: