acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
path_system.h
1// Create on 2021-03-21 00:11 <3ThomasBS_
2#pragma once
3
4
6
7
8class CLASS_DECL_ACME path_system :
9 virtual public particle
10{
11public:
12
13
14 ::IDENTIFIER_SUFFIX_OPERATING_SYSTEM(acme_)::path_system * m_pplatformpath;
15 ::directory_system * m_pdirectorysystem;
16 ::file_system * m_pfilesystem;
17
18
19 path_system();
20 ~path_system() override;
21
22
23 virtual ::string discrete_shell_path(const ::file::path& path);
24 virtual ::string shell_path(const ::file::path & path);
25
26
27 virtual ::string tool_folder_operating_system_name();
28 virtual ::file::path tool_folder_path();
29
30 virtual ::string icloud_container_identifier(const_char_pointer psz_iCloudContainerIdentifier);
31
32 virtual ::file::path defer_get_icloud_container_path(const ::file::path & path, const_char_pointer psz_iCloudContainerIdentifier);
33
34 virtual void defer_get_icloud_container_path_name(::string & strName, ::string & str_iCloudContainerIdentifier, const ::file::path & path);
35
36
37 virtual string from(const ::scoped_string & scopedstr);
38
39 virtual void safe_real_path(::file::path & path);
40
41 virtual ::file::path get_uniform_resource_locator(const ::file::path& path);
42
43 virtual ::file::path safe_get_real_path(const ::file::path & path);
44
45 virtual ::file::path _safe_real_path(const ::file::path & path);
46
47 virtual ::file::path real_path(const ::file::path & path);
48
49 virtual ::file::path _real_path(const ::file::path & path);
50
51 virtual ::file::path logical_path(const ::file::path& path);
52
53 virtual bool case_insensitive_real_path_begins_eat(string & str, const ::scoped_string & scopedstrPrefix);
54
55 virtual bool real_path_is_same(const ::file::path & path1, const ::file::path & path2);
56
57 virtual ::file::enum_type get_type(const ::file::path & path);
58
59 virtual ::file::enum_type safe_get_type(const ::file::path & path);
60
61 virtual void create_symbolic_link(const ::scoped_string & scopedstrLink, const ::scoped_string & scopedstrSource);
62
63 virtual bool is_symbolic_link(const ::scoped_string & scopedstrLink);
64
65 virtual ::file::path symbolic_link_destination(const ::scoped_string & scopedstrLink);
66
67 virtual ::pointer < ::file::item > file_item(const ::file::path & path);
68
69 virtual bool has_custom_icon(const ::file::path & path);
70
71
72 ::file::path defer_process_relative_path(const ::file::path & path, const ::file::path & pathFolder = "");
73
74 virtual bool defer_process_protocol_path(::file::path & path);
75
76 virtual ::file::path get_absolute_path(const ::scoped_string & scopedstr);
77 virtual bool is_absolute_path(const ::scoped_string & scopedstr);
78
79
80 //::pointer < ::file::link > resolve_link(const ::file::path &path);
81 virtual ::pointer < ::file::link > resolve_link(const ::file::path & path, ::file::e_link elink = ::file::e_link_all);
82
83
84
85 virtual void rename(const ::file::path& pathNewName, const ::file::path& pathOldName);
86 virtual ::file::path get_sequence_path(const ::file::path& path, ::collection::index iSequence, ::i32 iZeroPaddingWidth = 1);
87 virtual void defer_free_name_by_renaming_to_last_in_sequence(const ::file::path& path, ::i32 iZeroPaddingWidth = 1);
88
89
90 virtual ::file::e_type executable_type(const ::file::path & path);
91
92 virtual void determine_executable(::file::path & path);
93
94 virtual ::file::path defer_apply_working_directory(const ::file::path &path, const ::file::path &working_directory);
96 virtual ::string get_default_path();
97
99 bool get_next_path(::scoped_string & scopedstr, ::string::BASE_RANGE & rangePath);
100
101
102 virtual ::file::path _path_get_path(const scoped_string & scopedstrCommand, const ::scoped_string & scopedstrPath, string_to_string_lookup * plookupEnvironment);
103
104
105 virtual ::file::path path_get_path(const scoped_string & scopedstrCommand, string_to_string_lookup * plookupEnvironment);
106
107
108 virtual ::file::path path_try_get_path(const scoped_string & scopedstrCommand, string_to_string_lookup * plookupEnvironment);
109
110
111 virtual ::file::path windows_posix_path(const ::file::path & path);
112
113 virtual void symbolic_link(const ::file::path & pathTarget, const ::file::path & pathSource);
114
115};
116
117
118
Definition path.h:52
bool get_next_path(::scoped_string &scopedstr, ::string::BASE_RANGE &rangePath)
get next entry in a PATH-environment-variable-like value
Definition path_system.cpp:1032
virtual::string get_default_path()
A Default search path for PATH environment variable;.
Definition path_system.cpp:1024
Definition map_interface.h:8