acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
file_system_item.h
1// Created by camilo on 2025-10-19 17:00 <3ThomasBorregaardSørensen!! ThomasKanGodLideTalFem.
2// From programming by camilo on 2025-10-19 17:27 <3ThomasBorregaardSørensen!! ThomasKanGodLideTalFem.
3// From programming by camilo on 2025-10-19 19:04 <3ThomasBorregaardSørensen!! ThomasKanGodLideTalFem.
4#pragma once
5
6
7class CLASS_DECL_ACME file_system_item :
8 virtual public ::subparticle
9{
10public:
11
12
13 ::file_system_interface * m_pfilesysteminterface;
14 class ::time m_timeLastCheck2;
15 ::file::e_type m_etype;
16 //::logic::boolean m_bFileExists2;
17 //::logic::boolean m_bIsDir2;
18 ::logic::boolean m_bHasScript2;
19 ::string m_strExpandMd5;
20 ::particle_pointer m_particlea[MAX_FILE_SYSTEM_ITEM_SLOT_COUNT];
21 ::file::path m_pathReal1;
22 ::file::path m_pathLogical1;
23
24
25
26 //bool m_bHasScript = false;
27 //bool m_bHasScriptCalculated = false;
28
29 file_system_item();
30 ~file_system_item() override;
31
32
33 bool is_ok() const
34 {
35
36 if (::is_null(this))
37 {
38
39 return false;
40
41 }
42
43 return m_pathReal1.has_character() && m_pathReal1.is_existent_file_or_folder();
44
45 }
46
47
48 bool ok() const
49 {
50
51 if (::is_null(this))
52 {
53
54 return false;
55
56 }
57
58 return this->is_ok();
59
60 }
61
62
63 const ::file::path & path() const
64 {
65
66 return m_pathLogical1;
67
68 }
69
70 bool is_folder() const
71 {
72
73 if (::is_null(this))
74 {
75
76 return false;
77
78 }
79
80 return (m_etype & ::file::e_type_existent_folder) == ::file::e_type_existent_folder;
81
82 }
83
84 bool is_file() const
85 {
86
87 if (::is_null(this))
88 {
89
90 return false;
91
92 }
93
94 return (m_etype & ::file::e_type_existent_file) == ::file::e_type_existent_file;
95
96 }
97
98};
99
100
101
Definition path.h:52
Definition file_system_interface.h:15
Definition boolean.h:55