]>
Commit | Line | Data |
---|---|---|
056a1eb7 SF |
1 | /* $Id: process.h $ */ |
2 | /** @file | |
3 | * IPRT - Internal RTProc header. | |
4 | */ | |
5 | ||
6 | /* | |
7 | * Copyright (C) 2006-2016 Oracle Corporation | |
8 | * | |
9 | * This file is part of VirtualBox Open Source Edition (OSE), as | |
10 | * available from http://www.virtualbox.org. This file is free software; | |
11 | * you can redistribute it and/or modify it under the terms of the GNU | |
12 | * General Public License (GPL) as published by the Free Software | |
13 | * Foundation, in version 2 as it comes in the "COPYING" file of the | |
14 | * VirtualBox OSE distribution. VirtualBox OSE is distributed in the | |
15 | * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. | |
16 | * | |
17 | * The contents of this file may alternatively be used under the terms | |
18 | * of the Common Development and Distribution License Version 1.0 | |
19 | * (CDDL) only, as it comes in the "COPYING.CDDL" file of the | |
20 | * VirtualBox OSE distribution, in which case the provisions of the | |
21 | * CDDL are applicable instead of those of the GPL. | |
22 | * | |
23 | * You may elect to license modified versions of this file under the | |
24 | * terms and conditions of either the GPL or the CDDL or both. | |
25 | */ | |
26 | ||
27 | #ifndef ___internal_process_h | |
28 | #define ___internal_process_h | |
29 | ||
30 | #include <iprt/process.h> | |
31 | #include <iprt/param.h> | |
32 | ||
33 | RT_C_DECLS_BEGIN | |
34 | ||
35 | extern DECLHIDDEN(RTPROCESS) g_ProcessSelf; | |
36 | extern DECLHIDDEN(RTPROCPRIORITY) g_enmProcessPriority; | |
37 | extern DECLHIDDEN(char) g_szrtProcExePath[RTPATH_MAX]; | |
38 | extern DECLHIDDEN(size_t) g_cchrtProcExePath; | |
39 | extern DECLHIDDEN(size_t) g_cchrtProcDir; | |
40 | extern DECLHIDDEN(size_t) g_offrtProcName; | |
41 | extern DECLHIDDEN(bool volatile) g_frtAtExitCalled; | |
42 | ||
43 | /** | |
44 | * Validates and sets the process priority. | |
45 | * This will check that all rtThreadNativeSetPriority() will success for all the | |
46 | * thread types when applied to the current thread. | |
47 | * | |
48 | * @returns iprt status code. | |
49 | * @param enmPriority The priority to validate and set. | |
50 | * @remark Located in sched. | |
51 | */ | |
52 | DECLHIDDEN(int) rtProcNativeSetPriority(RTPROCPRIORITY enmPriority); | |
53 | ||
54 | /** | |
55 | * Determines the full path to the executable image. | |
56 | * | |
57 | * This is called by rtR3Init. | |
58 | * | |
59 | * @returns IPRT status code. | |
60 | * | |
61 | * @param pszPath Pointer to the g_szrtProcExePath buffer. | |
62 | * @param cchPath The size of the buffer. | |
63 | */ | |
64 | DECLHIDDEN(int) rtProcInitExePath(char *pszPath, size_t cchPath); | |
65 | ||
66 | RT_C_DECLS_END | |
67 | ||
68 | #endif | |
69 |