2000-11-08 05:28:54 +01:00
|
|
|
/*
|
|
|
|
* Definitions for the Wine library
|
|
|
|
*
|
|
|
|
* Copyright 2000 Alexandre Julliard
|
2002-03-10 00:29:33 +01:00
|
|
|
*
|
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
|
|
* License as published by the Free Software Foundation; either
|
|
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This library is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
* Lesser General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
|
|
* License along with this library; if not, write to the Free Software
|
2006-05-18 14:49:52 +02:00
|
|
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
2000-11-08 05:28:54 +01:00
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __WINE_WINE_LIBRARY_H
|
|
|
|
#define __WINE_WINE_LIBRARY_H
|
|
|
|
|
2003-09-06 01:08:26 +02:00
|
|
|
#include <stdarg.h>
|
2000-11-08 05:28:54 +01:00
|
|
|
#include <sys/types.h>
|
2003-09-06 01:08:26 +02:00
|
|
|
|
|
|
|
#include <windef.h>
|
2003-08-28 23:43:34 +02:00
|
|
|
#include <winbase.h>
|
2000-11-08 05:28:54 +01:00
|
|
|
|
2006-05-25 20:07:57 +02:00
|
|
|
#ifdef __WINE_WINE_TEST_H
|
|
|
|
#error This file should not be used in Wine tests
|
|
|
|
#endif
|
|
|
|
|
2019-05-17 16:46:47 +02:00
|
|
|
#ifdef __WINE_USE_MSVCRT
|
|
|
|
#error This file should not be used with msvcrt headers
|
|
|
|
#endif
|
|
|
|
|
2008-11-06 10:43:31 +01:00
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
2002-06-21 01:21:27 +02:00
|
|
|
/* configuration */
|
|
|
|
|
2006-03-16 17:36:19 +01:00
|
|
|
extern const char *wine_get_build_dir(void);
|
2002-06-21 01:21:27 +02:00
|
|
|
extern const char *wine_get_config_dir(void);
|
2006-03-06 18:50:15 +01:00
|
|
|
extern const char *wine_get_data_dir(void);
|
2002-06-21 01:21:27 +02:00
|
|
|
extern const char *wine_get_server_dir(void);
|
2002-08-27 20:30:53 +02:00
|
|
|
extern const char *wine_get_user_name(void);
|
2008-03-26 19:33:06 +01:00
|
|
|
extern const char *wine_get_version(void);
|
|
|
|
extern const char *wine_get_build_id(void);
|
2003-11-11 23:21:29 +01:00
|
|
|
extern void wine_init_argv0_path( const char *argv0 );
|
2006-02-16 20:26:55 +01:00
|
|
|
extern void wine_exec_wine_binary( const char *name, char **argv, const char *env_var );
|
2002-06-21 01:21:27 +02:00
|
|
|
|
2000-11-08 05:28:54 +01:00
|
|
|
/* dll loading */
|
|
|
|
|
2000-11-09 00:02:48 +01:00
|
|
|
typedef void (*load_dll_callback_t)( void *, const char * );
|
2000-11-08 05:28:54 +01:00
|
|
|
extern void wine_dll_set_callback( load_dll_callback_t load );
|
2006-02-04 17:02:05 +01:00
|
|
|
extern const char *wine_dll_enum_load_path( unsigned int index );
|
2005-09-02 16:43:03 +02:00
|
|
|
extern void __wine_dll_register( const IMAGE_NT_HEADERS *header, const char *filename );
|
2004-06-14 19:07:30 +02:00
|
|
|
extern void wine_init( int argc, char *argv[], char *error, int error_size );
|
2002-05-17 01:16:01 +02:00
|
|
|
|
2004-05-25 03:29:24 +02:00
|
|
|
/* memory mappings */
|
|
|
|
|
|
|
|
extern void *wine_anon_mmap( void *start, size_t size, int prot, int flags );
|
|
|
|
extern void wine_mmap_add_reserved_area( void *addr, size_t size );
|
|
|
|
extern void wine_mmap_remove_reserved_area( void *addr, size_t size, int unmap );
|
|
|
|
extern int wine_mmap_is_in_reserved_area( void *addr, size_t size );
|
2006-07-24 13:59:10 +02:00
|
|
|
extern int wine_mmap_enum_reserved_areas( int (*enum_func)(void *base, size_t size, void *arg),
|
|
|
|
void *arg, int top_down );
|
2004-05-25 03:29:24 +02:00
|
|
|
|
2008-11-06 10:43:31 +01:00
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
2000-11-08 05:28:54 +01:00
|
|
|
#endif /* __WINE_WINE_LIBRARY_H */
|