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 <sys/stat.h>
34 #include "sal/types.h"
35 
38 /* Some additions to the osl file functions for LibreOffice internal
39  use. Needed for details in the Android support.
40  */
41 
42 #if defined __cplusplus
43 extern "C" {
44 #endif
45 
46 /* More flags needed for semantics that match the open() call that
47  used to be in SvFileStream::Open().
48 */
49 #define osl_File_OpenFlag_Trunc 0x00000010L
50 #define osl_File_OpenFlag_NoExcl 0x00000020L
51 
52 SAL_DLLPUBLIC oslFileError SAL_CALL osl_openFilePath(
53  const char *cpFilePath,
54  oslFileHandle* pHandle,
55  sal_uInt32 uFlags );
56 
57 /* Get the OS specific "handle" of an open file. */
58 SAL_DLLPUBLIC oslFileError SAL_CALL osl_getFileOSHandle(
59  oslFileHandle Handle,
60  sal_IntPtr *piFileHandle );
61 
62 /* for unit testing. */
63 SAL_DLLPUBLIC oslFileError SAL_CALL osl_openMemoryAsFile( void *address, size_t size, oslFileHandle *pHandle );
64 
65 #if defined __cplusplus
66 }
67 #endif
68 
71 #endif /* INCLUDED_OSL_DETAIL_FILE_H */
72 
73 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */