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 15struct system_profiler_parameters; 16 17 18__BEGIN_DECLS 19 20#if SYSTEM_PROFILER 21status_t start_system_profiler(size_t areaSize, uint32 stackDepth, 22 bigtime_t interval); 23void stop_system_profiler(); 24#endif 25 26status_t _user_system_profiler_start( 27 struct system_profiler_parameters* parameters); 28status_t _user_system_profiler_next_buffer(size_t bytesRead, 29 uint64* _droppedEvents); 30status_t _user_system_profiler_stop(); 31status_t _user_system_profiler_recorded( 32 struct system_profiler_parameters* parameters); 33 34__END_DECLS 35 36 37#endif /* _KERNEL_SYSTEM_PROFILER_H */ 38