aboutsummaryrefslogtreecommitdiff
path: root/doc/oscl_html/oscl__file__manager_8h_source.html
blob: 753c66b3c10c14632b4e6b45e23ce799dfb7b215 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>oscl: oscl_file_manager.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.3 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
<h1>oscl_file_manager.h</h1><a href="oscl__file__manager_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// -*- c++ -*-</span>
<a name="l00002"></a>00002 <span class="comment">// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =</span>
<a name="l00003"></a>00003 
<a name="l00004"></a>00004 <span class="comment">//                     O S C L _ F I L E _ M A N A G E R</span>
<a name="l00005"></a>00005 
<a name="l00006"></a>00006 <span class="comment">// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =</span>
<a name="l00007"></a>00007 
<a name="l00019"></a>00019 <span class="preprocessor">#ifndef OSCL_FILE_MANAGER_H_INCLUDED</span>
<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#define OSCL_FILE_MANAGER_H_INCLUDED</span>
<a name="l00021"></a>00021 <span class="preprocessor"></span>
<a name="l00022"></a>00022 <span class="preprocessor">#include &quot;<a class="code" href="oscl__base_8h.html" title="The file oscl_base.h is the public header that should be included to pick up the...">oscl_base.h</a>&quot;</span>
<a name="l00023"></a>00023 
<a name="l00024"></a><a class="code" href="classOsclFileManager.html">00024</a> <span class="keyword">class </span><a class="code" href="classOsclFileManager.html">OsclFileManager</a>
<a name="l00025"></a>00025 {
<a name="l00026"></a>00026     <span class="keyword">public</span>:
<a name="l00027"></a><a class="code" href="classOsclFileManager.html#ac5bbac2381769160f8b20bda32926d88">00027</a>         <span class="keyword">typedef</span> <span class="keyword">enum</span>
<a name="l00028"></a>00028         {
<a name="l00029"></a><a class="code" href="classOsclFileManager.html#ac5bbac2381769160f8b20bda32926d88a588a0bf131e5c10592f9f12fc075feb8">00029</a>             <a class="code" href="classOsclFileManager.html#ac5bbac2381769160f8b20bda32926d88a588a0bf131e5c10592f9f12fc075feb8">OSCL_FILE_ATTRIBUTE_READONLY</a>        =       0x00000001,
<a name="l00030"></a>00030             <span class="comment">/*</span>
<a name="l00031"></a>00031 <span class="comment">            The file or directory is read-only. Applications can read the file but cannot write to it or delete it.</span>
<a name="l00032"></a>00032 <span class="comment">            For a directory, applications cannot delete it.</span>
<a name="l00033"></a>00033 <span class="comment">            */</span>
<a name="l00034"></a><a class="code" href="classOsclFileManager.html#ac5bbac2381769160f8b20bda32926d88ac481b3d2799c6e4c28a3ea700ad894ae">00034</a>             <a class="code" href="classOsclFileManager.html#ac5bbac2381769160f8b20bda32926d88ac481b3d2799c6e4c28a3ea700ad894ae">OSCL_FILE_ATTRIBUTE_HIDDEN</a>          =       0x00000002,
<a name="l00035"></a>00035             <span class="comment">/*</span>
<a name="l00036"></a>00036 <span class="comment">            The file or directory is hidden. It is not included in an ordinary directory listing.</span>
<a name="l00037"></a>00037 <span class="comment">            */</span>
<a name="l00038"></a><a class="code" href="classOsclFileManager.html#ac5bbac2381769160f8b20bda32926d88a821b6cec4a62e3dca594ef4b971c812f">00038</a>             <a class="code" href="classOsclFileManager.html#ac5bbac2381769160f8b20bda32926d88a821b6cec4a62e3dca594ef4b971c812f">OSCL_FILE_ATTRIBUTE_SYSTEM</a>          =       0x00000004,
<a name="l00039"></a>00039             <span class="comment">/*</span>
<a name="l00040"></a>00040 <span class="comment">            The file or directory is part of the operating system, or is used exclusively by the operating system.</span>
<a name="l00041"></a>00041 <span class="comment">            */</span>
<a name="l00042"></a><a class="code" href="classOsclFileManager.html#ac5bbac2381769160f8b20bda32926d88ac1512f63176b442eb2781e21d503f278">00042</a>             <a class="code" href="classOsclFileManager.html#ac5bbac2381769160f8b20bda32926d88ac1512f63176b442eb2781e21d503f278">OSCL_FILE_ATTRIBUTE_DIRECTORY</a>       =       0x00000010,
<a name="l00043"></a>00043             <span class="comment">/*</span>
<a name="l00044"></a>00044 <span class="comment">            The handle identifies a directory.</span>
<a name="l00045"></a>00045 <span class="comment">            */</span>
<a name="l00046"></a><a class="code" href="classOsclFileManager.html#ac5bbac2381769160f8b20bda32926d88aa57fa488482fd16cc420c3f0efafaa6a">00046</a>             <a class="code" href="classOsclFileManager.html#ac5bbac2381769160f8b20bda32926d88aa57fa488482fd16cc420c3f0efafaa6a">OSCL_FILE_ATTRIBUTE_ARCHIVE</a>         =       0x00000020,
<a name="l00047"></a>00047             <span class="comment">/*</span>
<a name="l00048"></a>00048 <span class="comment">            The file or directory is an archive file. Applications use this attribute to mark files for backup or removal.</span>
<a name="l00049"></a>00049 <span class="comment">            */</span>
<a name="l00050"></a><a class="code" href="classOsclFileManager.html#ac5bbac2381769160f8b20bda32926d88a8c058802f005aa863ae248db423e89d1">00050</a>             <a class="code" href="classOsclFileManager.html#ac5bbac2381769160f8b20bda32926d88a8c058802f005aa863ae248db423e89d1">OSCL_FILE_ATTRIBUTE_NORMAL</a>            =       0x00000080,
<a name="l00051"></a>00051             <span class="comment">/*</span>
<a name="l00052"></a>00052 <span class="comment">            The file or directory does not have another attributes set. This attribute is valid only if used alone.</span>
<a name="l00053"></a>00053 <span class="comment">            */</span>
<a name="l00054"></a>00054             <span class="comment">//OSCL_FILE_ATTRIBUTE_TEMPORARY     =       0x00000100,</span>
<a name="l00055"></a>00055             <span class="comment">/*</span>
<a name="l00056"></a>00056 <span class="comment">            The file is being used for temporary storage. File systems avoid writing data back to mass storage</span>
<a name="l00057"></a>00057 <span class="comment">            if sufficient cache memory is available, because often the application deletes the temporary file</span>
<a name="l00058"></a>00058 <span class="comment">            shortly after the handle is closed. In that case, the system can entirely avoid writing the data.</span>
<a name="l00059"></a>00059 <span class="comment">            Otherwise, the data is written after the handle is closed.</span>
<a name="l00060"></a>00060 <span class="comment">            */</span>
<a name="l00061"></a>00061             <span class="comment">//OSCL_FILE_ATTRIBUTE_SPARSE_FILE       =       0x00000200,</span>
<a name="l00062"></a>00062             <span class="comment">/*</span>
<a name="l00063"></a>00063 <span class="comment">            The file is a sparse file.</span>
<a name="l00064"></a>00064 <span class="comment">            */</span>
<a name="l00065"></a>00065             <span class="comment">//OSCL_FILE_ATTRIBUTE_REPARSE_POINT =       0x00000400,</span>
<a name="l00066"></a>00066             <span class="comment">/*</span>
<a name="l00067"></a>00067 <span class="comment">            The file or directory has an associated reparse point.</span>
<a name="l00068"></a>00068 <span class="comment">            */</span>
<a name="l00069"></a>00069             <span class="comment">//OSCL_FILE_ATTRIBUTE_COMPRESSED        =       0x00000800,</span>
<a name="l00070"></a>00070             <span class="comment">/*</span>
<a name="l00071"></a>00071 <span class="comment">            The file or directory is compressed.</span>
<a name="l00072"></a>00072 <span class="comment">            For a file, this means that all of the data in the file is compressed.</span>
<a name="l00073"></a>00073 <span class="comment">            For a directory, this means that compression is the default for newly created files and subdirectories.</span>
<a name="l00074"></a>00074 <span class="comment">            */</span>
<a name="l00075"></a>00075 
<a name="l00076"></a>00076             <span class="comment">//OSCL_FILE_ATTRIBUTE_OFFLINE           =       0x00001000,</span>
<a name="l00077"></a>00077             <span class="comment">/*</span>
<a name="l00078"></a>00078 <span class="comment">            The data of the file is not immediately available. This attribute indicates that the file data has been</span>
<a name="l00079"></a>00079 <span class="comment">            physically moved to offline storage.This attribute is used by Remote Storage, the hierarchical storage</span>
<a name="l00080"></a>00080 <span class="comment">            management software. Applications should not arbitrarily change this attribute.</span>
<a name="l00081"></a>00081 <span class="comment">            */</span>
<a name="l00082"></a>00082             <span class="comment">//OSCL_FILE_ATTRIBUTE_ENCRYPTED     =       0x00004000,</span>
<a name="l00083"></a>00083             <span class="comment">/*</span>
<a name="l00084"></a>00084 <span class="comment">            The file or directory is encrypted. For a file, this means that all data in the file is encrypted.</span>
<a name="l00085"></a>00085 <span class="comment">            For a directory, this means that encryption is the default for newly created files and subdirectories.</span>
<a name="l00086"></a>00086 <span class="comment">            */</span>
<a name="l00087"></a>00087             <span class="comment">//OSCL_FILE_ATTRIBUTE_VIRTUAL           =       0x00010000</span>
<a name="l00088"></a>00088             <span class="comment">/*</span>
<a name="l00089"></a>00089 <span class="comment">            A file is a virtual file.</span>
<a name="l00090"></a>00090 <span class="comment">            */</span>
<a name="l00091"></a>00091 
<a name="l00092"></a>00092         } <a class="code" href="classOsclFileManager.html#ac5bbac2381769160f8b20bda32926d88">OSCL_FILE_ATTRIBUTE_TYPE</a>;
<a name="l00093"></a>00093 
<a name="l00103"></a>00103         <a class="code" href="osclconfig_8h.html#a6de0f53c5c11f8f53ce72c70d74d9abc">OSCL_IMPORT_REF</a> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="group__osclio.html#gaba6522090b7b5a78998a36d8ed7b1237">OsclGetFileSize</a>(<span class="keyword">const</span> <a class="code" href="group__osclbase.html#gad3f9ec9db55ebd4760c877b17eb596ec">oscl_wchar</a>* aFileName, <a class="code" href="group__osclbase.html#gaeee93fd1c6230965ea7adc3e63fac06e">uint64</a>&amp; aFileSize);
<a name="l00104"></a>00104 
<a name="l00113"></a>00113         <a class="code" href="osclconfig_8h.html#a6de0f53c5c11f8f53ce72c70d74d9abc">OSCL_IMPORT_REF</a> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="group__osclio.html#gaba6522090b7b5a78998a36d8ed7b1237">OsclGetFileSize</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* aFileName, <a class="code" href="group__osclbase.html#gaeee93fd1c6230965ea7adc3e63fac06e">uint64</a>&amp; aFileSize);
<a name="l00114"></a>00114 
<a name="l00124"></a>00124         <a class="code" href="osclconfig_8h.html#a6de0f53c5c11f8f53ce72c70d74d9abc">OSCL_IMPORT_REF</a> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="group__osclio.html#gae2b79e8a5579e1d7e28fb50e4ed286f7">OsclGetFileCreationTime</a>(<span class="keyword">const</span> <a class="code" href="group__osclbase.html#gad3f9ec9db55ebd4760c877b17eb596ec">oscl_wchar</a>* aFileName, <a class="code" href="group__osclbase.html#gaeee93fd1c6230965ea7adc3e63fac06e">uint64</a>&amp; aFileCreationTime);
<a name="l00125"></a>00125 
<a name="l00135"></a>00135         <a class="code" href="osclconfig_8h.html#a6de0f53c5c11f8f53ce72c70d74d9abc">OSCL_IMPORT_REF</a> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="group__osclio.html#gae2b79e8a5579e1d7e28fb50e4ed286f7">OsclGetFileCreationTime</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* aFileName, <a class="code" href="group__osclbase.html#gaeee93fd1c6230965ea7adc3e63fac06e">uint64</a>&amp; aFileCreationTime);
<a name="l00136"></a>00136 
<a name="l00147"></a>00147         <a class="code" href="osclconfig_8h.html#a6de0f53c5c11f8f53ce72c70d74d9abc">OSCL_IMPORT_REF</a> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="group__osclio.html#ga4a4996a2ff4db67540d97369f1a5c738">OsclGetFileLastAccessTime</a>(<span class="keyword">const</span> <a class="code" href="group__osclbase.html#gad3f9ec9db55ebd4760c877b17eb596ec">oscl_wchar</a>* aFileName, <a class="code" href="group__osclbase.html#gaeee93fd1c6230965ea7adc3e63fac06e">uint64</a>&amp; aFileLastAccessTime);
<a name="l00157"></a>00157         <a class="code" href="osclconfig_8h.html#a6de0f53c5c11f8f53ce72c70d74d9abc">OSCL_IMPORT_REF</a> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="group__osclio.html#ga4a4996a2ff4db67540d97369f1a5c738">OsclGetFileLastAccessTime</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* aFileName, <a class="code" href="group__osclbase.html#gaeee93fd1c6230965ea7adc3e63fac06e">uint64</a>&amp; aFileLastAccessTime);
<a name="l00158"></a>00158 
<a name="l00167"></a>00167         <a class="code" href="osclconfig_8h.html#a6de0f53c5c11f8f53ce72c70d74d9abc">OSCL_IMPORT_REF</a> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="group__osclio.html#ga9302cb14b69eeab0f6dfc9261b93b1fe">OsclGetFileLastWriteTime</a>(<span class="keyword">const</span> <a class="code" href="group__osclbase.html#gad3f9ec9db55ebd4760c877b17eb596ec">oscl_wchar</a>* aFileName, <a class="code" href="group__osclbase.html#gaeee93fd1c6230965ea7adc3e63fac06e">uint64</a>&amp; aFileLastWriteTime);
<a name="l00168"></a>00168 
<a name="l00177"></a>00177         <a class="code" href="osclconfig_8h.html#a6de0f53c5c11f8f53ce72c70d74d9abc">OSCL_IMPORT_REF</a> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="group__osclio.html#ga9302cb14b69eeab0f6dfc9261b93b1fe">OsclGetFileLastWriteTime</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* aFileName, <a class="code" href="group__osclbase.html#gaeee93fd1c6230965ea7adc3e63fac06e">uint64</a>&amp; aFileLastWriteTime);
<a name="l00178"></a>00178 
<a name="l00188"></a>00188         <a class="code" href="osclconfig_8h.html#a6de0f53c5c11f8f53ce72c70d74d9abc">OSCL_IMPORT_REF</a> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="group__osclio.html#gac2830d0799bfe091c8a2be2d65c18bf9">OsclGetFileAttributes</a>(<span class="keyword">const</span> <a class="code" href="group__osclbase.html#gad3f9ec9db55ebd4760c877b17eb596ec">oscl_wchar</a>* aFileName, uint32&amp; aFileAttributes);
<a name="l00189"></a>00189 
<a name="l00199"></a>00199         <a class="code" href="osclconfig_8h.html#a6de0f53c5c11f8f53ce72c70d74d9abc">OSCL_IMPORT_REF</a> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="group__osclio.html#gac2830d0799bfe091c8a2be2d65c18bf9">OsclGetFileAttributes</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* aFileName, uint32&amp; aFileAttributes);
<a name="l00207"></a>00207         <a class="code" href="osclconfig_8h.html#a6de0f53c5c11f8f53ce72c70d74d9abc">OSCL_IMPORT_REF</a> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__osclio.html#ga5c788c54dcb64dc454f55ea6a3807901">OsclExtractFilenameFromFullpath</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* aPath, <span class="keywordtype">char</span>* &amp;aFileName);
<a name="l00208"></a>00208         <a class="code" href="osclconfig_8h.html#a6de0f53c5c11f8f53ce72c70d74d9abc">OSCL_IMPORT_REF</a> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__osclio.html#ga5c788c54dcb64dc454f55ea6a3807901">OsclExtractFilenameFromFullpath</a>(<span class="keyword">const</span> <a class="code" href="group__osclbase.html#gad3f9ec9db55ebd4760c877b17eb596ec">oscl_wchar</a>* aPath, <a class="code" href="group__osclbase.html#gad3f9ec9db55ebd4760c877b17eb596ec">oscl_wchar</a>* &amp;aFileName);
<a name="l00209"></a>00209 
<a name="l00210"></a>00210 <span class="preprocessor">#endif // OSCL_FILE_MANAGER_H_INCLUDED</span>
<a name="l00211"></a>00211 <span class="preprocessor"></span>
<a name="l00213"></a>00213 };
</pre></div></div>
<hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small>
<address style="align: left;"><small>Posting Version: CORE_9.002.1.1 </small>
</small></address>
</body>
</html>