You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Licensed under the Apache License, Version 2.0 (the "License");
5
+
* you may not use this file except in compliance with the License.
6
+
* You may obtain a copy of the License at
7
+
*
8
+
* http://www.apache.org/licenses/LICENSE-2.0
9
+
*
10
+
* Unless required by applicable law or agreed to in writing, software
11
+
* distributed under the License is distributed on an "AS IS" BASIS,
12
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+
* See the License for the specific language governing permissions and
14
+
* limitations under the License.
15
+
*/
16
+
17
+
#ifdefined _PLUGIN_FILE_SYSTEM_
18
+
#endinput
19
+
#endif
20
+
#define_PLUGIN_FILE_SYSTEM_
21
+
22
+
enum OpenMode
23
+
{
24
+
ios_base_in,// Open for input operations.
25
+
ios_base_out,// Open for output operations.
26
+
ios_base_ate,// Set the initial position at the end of the file. If this flag is not set, the initial position is the beginning of the file.
27
+
ios_base_app,// All output operations are performed at the end of the file, appending the content to the current content of the file.
28
+
ios_base_trunc,// If the file is opened for output operations and it already existed, its previous content is deleted and replaced by the new one.
29
+
ios_base_binary// Open in binary mode.
30
+
};
31
+
32
+
enum FileType
33
+
{
34
+
ft_regular,// Represents a conventional disk file.
35
+
ft_directory,// Represents a directory.
36
+
ft_symlink,// Represents a symbolic link. (Not supported.)
37
+
ft_block,// Represents a block-special file on UNIX-based systems. (Not supported.)
38
+
ft_character,// Represents a character-special file on UNIX-based systems. (Not supported.)
39
+
ft_fifo,// Represents a FIFO file on UNIX-based systems. (Not supported.)
40
+
ft_socket// Represents a socket on UNIX based systems. (Not supported.)
41
+
};
42
+
43
+
enum CopyOptions
44
+
{
45
+
co_none,// Perform the default behavior for the operation.
46
+
co_skip_existing,// Do not copy if the file already exists, do not report an error.
47
+
co_overwrite_existing,// Overwrite the file if it already exists.
48
+
co_update_existing,// Overwrite the file if it already exists and is older than the replacement.
49
+
co_recursive,// Recursively copy subdirectories and their contents.
50
+
co_copy_symlinks,// Copy symbolic links as symbolic links, instead of copying the files they point to.
51
+
co_skip_symlinks,// Ignore symbolic links.
52
+
co_directories_only,// Only iterate over directories, ignore files.
53
+
co_create_symlinks,// Make symbolic links instead of copying files. An absolute path must be used as the source path unless the destination is the current directory.
54
+
co_create_hard_links// Make hard links instead of copying files.
0 commit comments