SysprogsProfilerInterface.h
Go to the documentation of this file.
1 #pragma once
2 
3 typedef enum
4 {
6  pdcInstrumentationProfilerStreamDeprecated = 0x42, //Old protocol that does not support RTOS extensions
12 
13 typedef enum
14 {
19 
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23 int SysprogsProfiler_WriteData(ProfilerDataChannel channel, const void *pHeader, unsigned headerSize, const void *pPayload, unsigned payloadSize);
24 int SysprogsProfiler_GetBufferAvailability(unsigned exp); //Returns (1 << exp) if the buffer is fully available, 0 if fully used, -1 if not supported
25 
28 
29 void SysprogsProfiler_RTOSThreadSwitched(void *newThread, const char *pThreadName, void *pStackLimit);
30 void SysprogsProfiler_RTOSThreadDeleted(void *thread);
31 
32 void SysprogsProfiler_ReportResourceTaken(void *pResource, void *pOwner, unsigned optional24BitTag);
33 void SysprogsProfiler_ReportResourceReleased(void *pResource, void *pOwner, unsigned optional24BitTag);
34 
35 void SysprogsProfiler_ReportIntegralValue(void *pResource, unsigned value, int reportAsSigned);
36 void SysprogsProfiler_ReportFPValue(void *pResource, double value);
37 void SysprogsProfiler_ReportGenericEvent(void *pResource, const char *pEvent);
38 void SysprogsProfiler_ReportGenericEventEx(void *pResource, void *argument, RealTimeEventArgType argType, int argSize);
39 
40 #ifdef __cplusplus
41 }
42 #endif
43 
44 #ifdef __cplusplus
45 namespace SysprogsStackVerifier
46 {
47  extern void *StackLimit;
48 }
49 #endif
Definition: SysprogsProfilerInterface.h:5
RealTimeEventArgType
Definition: SysprogsProfilerInterface.h:13
Definition: SysprogsProfilerInterface.h:15
int SysprogsProfiler_WriteData(ProfilerDataChannel channel, const void *pHeader, unsigned headerSize, const void *pPayload, unsigned payloadSize)
int const void * pHeader
Definition: FastSemihosting.cpp:274
Definition: SysprogsProfilerInterface.h:6
int const void unsigned const void * pPayload
Definition: FastSemihosting.cpp:274
void SysprogsProfiler_ReportGenericEvent(void *pResource, const char *pEvent)
Definition: InstrumentingProfiler.cpp:817
void SysprogsProfiler_ReportResourceTaken(void *pResource, void *pOwner, unsigned optional24BitTag)
Definition: InstrumentingProfiler.cpp:781
Definition: SysprogsProfilerInterface.h:7
Definition: SysprogsProfilerInterface.h:17
Definition: SysprogsProfilerInterface.h:16
void SysprogsProfiler_RTOSThreadSwitched(void *newThread, const char *pThreadName, void *pStackLimit)
Definition: InstrumentingProfiler.cpp:730
void SysprogsProfiler_ReportGenericEventEx(void *pResource, void *argument, RealTimeEventArgType argType, int argSize)
Definition: InstrumentingProfiler.cpp:827
void SysprogsProfiler_ReportFPValue(void *pResource, double value)
Definition: InstrumentingProfiler.cpp:808
ProfilerDataChannel
Definition: SysprogsProfilerInterface.h:3
void SysprogsProfiler_RTOSThreadDeleted(void *thread)
Definition: InstrumentingProfiler.cpp:765
void SysprogsProfiler_ReportResourceReleased(void *pResource, void *pOwner, unsigned optional24BitTag)
Definition: InstrumentingProfiler.cpp:790
int SysprogsProfiler_GetBufferAvailability(unsigned exp)
Definition: FastSemihosting.cpp:309
void * StackLimit
Definition: InstrumentingProfiler.cpp:606
Definition: SysprogsProfilerInterface.h:8
int const void unsigned headerSize
Definition: FastSemihosting.cpp:274
void SysprogsProfiler_ReportIntegralValue(void *pResource, unsigned value, int reportAsSigned)
Definition: InstrumentingProfiler.cpp:799
Definition: SysprogsProfilerInterface.h:10
unsigned SysprogsInstrumentingProfiler_QueryAndResetPerformanceCounter()
Returns the amount of profiler clock ticks passed since the last call to this function.
Definition: ProfilerDriver_Nrf5x.cpp:101
Definition: InstrumentingProfiler.cpp:604
Definition: SysprogsProfilerInterface.h:9