My Project
UDK 3.2.7 C/C++ API Reference
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
file.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * Version: MPL 1.1 / GPLv3+ / LGPLv3+
4  *
5  * The contents of this file are subject to the Mozilla Public License Version
6  * 1.1 (the "License"); you may not use this file except in compliance with
7  * the License or as specified alternatively below. You may obtain a copy of
8  * the License at http://www.mozilla.org/MPL/
9  *
10  * Software distributed under the License is distributed on an "AS IS" basis,
11  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
12  * for the specific language governing rights and limitations under the
13  * License.
14  *
15  * Major Contributor(s):
16  * Copyright (C) 2012 Tor Lillqvist <tml@iki.fi> (initial developer)
17  * Copyright (C) 2012 SUSE Linux http://suse.com (initial developer's employer)
18  *
19  * All Rights Reserved.
20  *
21  * For minor contributions see the git repository.
22  *
23  * Alternatively, the contents of this file may be used under the terms of
24  * either the GNU General Public License Version 3 or later (the "GPLv3+"), or
25  * the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
26  * in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
27  * instead of those above.
28  */
29 
30 #ifndef INCLUDED_OSL_DETAIL_FILE_H
31 #define INCLUDED_OSL_DETAIL_FILE_H
32 
33 #include "sal/config.h"
34 
35 #include <sys/stat.h>
36 
37 #include "sal/saldllapi.h"
38 #include "sal/types.h"
39 
42 /* Some additions to the osl file functions for LibreOffice internal
43  use. Needed for details in the Android support.
44  */
45 
46 #if defined __cplusplus
47 extern "C" {
48 #endif
49 
50 /* More flags needed for semantics that match the open() call that
51  used to be in SvFileStream::Open().
52 */
53 #define osl_File_OpenFlag_Trunc 0x00000010L
54 #define osl_File_OpenFlag_NoExcl 0x00000020L
55 
56 SAL_DLLPUBLIC oslFileError SAL_CALL osl_openFilePath(
57  const char *cpFilePath,
58  oslFileHandle* pHandle,
59  sal_uInt32 uFlags );
60 
61 /* Get the OS specific "handle" of an open file. */
62 SAL_DLLPUBLIC oslFileError SAL_CALL osl_getFileOSHandle(
63  oslFileHandle Handle,
64  sal_IntPtr *piFileHandle );
65 
66 /* for unit testing. */
67 SAL_DLLPUBLIC oslFileError SAL_CALL osl_openMemoryAsFile( void *address, size_t size, oslFileHandle *pHandle );
68 
69 #if defined __cplusplus
70 }
71 #endif
72 
75 #endif /* INCLUDED_OSL_DETAIL_FILE_H */
76 
77 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */