1 /* 2 * Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de. 3 * Distributed under the terms of the MIT License. 4 */ 5 #ifndef _KERNEL_SYSTEM_PROFILER_H 6 #define _KERNEL_SYSTEM_PROFILER_H 7 8 #include <sys/cdefs.h> 9 10 #include <OS.h> 11 12 #include "kernel_debug_config.h" 13 14 15 struct system_profiler_parameters; 16 17 18 __BEGIN_DECLS 19 20 #if SYSTEM_PROFILER 21 status_t start_system_profiler(size_t areaSize, uint32 stackDepth, 22 bigtime_t interval); 23 void stop_system_profiler(); 24 #endif 25 26 status_t _user_system_profiler_start( 27 struct system_profiler_parameters* parameters); 28 status_t _user_system_profiler_next_buffer(size_t bytesRead, 29 uint64* _droppedEvents); 30 status_t _user_system_profiler_stop(); 31 status_t _user_system_profiler_recorded( 32 struct system_profiler_parameters* parameters); 33 34 __END_DECLS 35 36 37 #endif /* _KERNEL_SYSTEM_PROFILER_H */ 38