xref: /haiku/headers/private/kernel/ksystem_info.h (revision 6250297a0862f935bdd9e1770bb7dde9cdab2e3f)
1ca7cb625SAxel Dörfler /*
2ca7cb625SAxel Dörfler  * Copyright 2004-2008, Axel Dörfler, axeld@pinc-software.de.
3ca7cb625SAxel Dörfler  * Distributed under the terms of the MIT License.
4ca7cb625SAxel Dörfler  */
5ca7cb625SAxel Dörfler #ifndef _KERNEL_SYSTEM_INFO_H
6ca7cb625SAxel Dörfler #define _KERNEL_SYSTEM_INFO_H
7ca7cb625SAxel Dörfler 
8ca7cb625SAxel Dörfler 
9ca7cb625SAxel Dörfler #include <OS.h>
10ca7cb625SAxel Dörfler 
11d2bf328dSIngo Weinhold 
12ca7cb625SAxel Dörfler struct kernel_args;
13ca7cb625SAxel Dörfler 
14ca7cb625SAxel Dörfler 
15ca7cb625SAxel Dörfler #ifdef __cplusplus
16ca7cb625SAxel Dörfler extern "C" {
17ca7cb625SAxel Dörfler #endif
18ca7cb625SAxel Dörfler 
19ca7cb625SAxel Dörfler 
20d2bf328dSIngo Weinhold status_t system_info_init(struct kernel_args *args);
21d2bf328dSIngo Weinhold status_t system_notifications_init();
22*6250297aSOliver Tappe const char* get_haiku_revision(void);
23d2bf328dSIngo Weinhold 
24d2bf328dSIngo Weinhold status_t _user_get_system_info(system_info *userInfo, size_t size);
25d2bf328dSIngo Weinhold status_t _user_get_system_info_etc(int32 id, void *buffer,
26ca7cb625SAxel Dörfler 			size_t bufferSize);
27ca7cb625SAxel Dörfler 
28d23cadceSIngo Weinhold status_t _user_start_watching_system(int32 object, uint32 flags, port_id port,
29d23cadceSIngo Weinhold 			int32 token);
30d23cadceSIngo Weinhold status_t _user_stop_watching_system(int32 object, uint32 flags, port_id port,
31d23cadceSIngo Weinhold 			int32 token);
32d2bf328dSIngo Weinhold 
33d2bf328dSIngo Weinhold 
34ca7cb625SAxel Dörfler #ifdef __cplusplus
35ca7cb625SAxel Dörfler }
36ca7cb625SAxel Dörfler #endif
37ca7cb625SAxel Dörfler 
38d2bf328dSIngo Weinhold 
39ca7cb625SAxel Dörfler #endif	/* _KERNEL_SYSTEM_INFO_H */
40