Open Dynamics Engine
odeinit.h
1 /*************************************************************************
2  * *
3  * Open Dynamics Engine, Copyright (C) 2001,2002 Russell L. Smith. *
4  * All rights reserved. Email: russ@q12.org Web: www.q12.org *
5  * *
6  * This library is free software; you can redistribute it and/or *
7  * modify it under the terms of EITHER: *
8  * (1) The GNU Lesser General Public License as published by the Free *
9  * Software Foundation; either version 2.1 of the License, or (at *
10  * your option) any later version. The text of the GNU Lesser *
11  * General Public License is included with this library in the *
12  * file LICENSE.TXT. *
13  * (2) The BSD-style license that is included with this library in *
14  * the file LICENSE-BSD.TXT. *
15  * *
16  * This library is distributed in the hope that it will be useful, *
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the files *
19  * LICENSE.TXT and LICENSE-BSD.TXT for more details. *
20  * *
21  *************************************************************************/
22 
23 /* Library initialization/finalization functions. */
24 
25 #ifndef _ODE_ODEINIT_H_
26 #define _ODE_ODEINIT_H_
27 
28 #include <ode/common.h>
29 
30 
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
34 
35 
36 /* ************************************************************************ */
37 /* Library initialization */
38 
77  dInitFlagManualThreadCleanup = 0x00000001 /*@< Thread local data is to be cleared explicitly on @c dCleanupODEAllDataForThread function call*/
78 };
79 
95 ODE_API void dInitODE(void);
96 
119 ODE_API int dInitODE2(unsigned int uiInitFlags/*=0*/);
120 
121 
147  dAllocateFlagBasicData = 0, /*@< Allocate basic data required for library to operate*/
148 
149  dAllocateFlagCollisionData = 0x00000001, /*@< Allocate data for collision detection*/
150 
151  dAllocateMaskAll = ~0 /*@< Allocate all the possible data that is currently defined or will be defined in the future.*/
152 };
153 
177 ODE_API int dAllocateODEDataForThread(unsigned int uiAllocateFlags);
178 
204 ODE_API void dCleanupODEAllDataForThread();
205 
206 
227 ODE_API void dCloseODE(void);
228 
229 
230 
231 #ifdef __cplusplus
232 } /* extern "C" */
233 #endif
234 
235 
236 #endif /* _ODE_ODEINIT_H_ */
ODE_API int dAllocateODEDataForThread(unsigned int uiAllocateFlags)
Allocate thread local data to allow the thread calling ODE.
Definition: odeinit.cpp:532
ODE_API void dInitODE(void)
Initializes ODE library.
Definition: odeinit.cpp:487
ODE_API void dCleanupODEAllDataForThread()
Free thread local data that was allocated for current thread.
Definition: odeinit.cpp:541
dInitODEFlags
Library initialization flags.
Definition: odeinit.h:76
ODE_API int dInitODE2(unsigned int uiInitFlags)
Initializes ODE library.
Definition: odeinit.cpp:496
ODE_API void dCloseODE(void)
Close ODE after it is not needed any more.
Definition: odeinit.cpp:549
dAllocateODEDataFlags
ODE data allocation flags.
Definition: odeinit.h:146