]> git.saurik.com Git - wxWidgets.git/blame - docs/latex/wx/fsfile.tex
support for huge files (patch 1002226)
[wxWidgets.git] / docs / latex / wx / fsfile.tex
CommitLineData
11b63f34
VS
1%
2% automatically generated by HelpGen from
3% fsfile.tex at 21/Mar/99 23:00:52
4%
5
11b63f34
VS
6\section{\class{wxFSFile}}\label{wxfsfile}
7
36edded9
JS
8This class represents a single file opened by \helpref{wxFileSystem}{wxfilesystem}.
9It provides more information than wxWindow's input stream
11b63f34
VS
10(stream, filename, mime type, anchor).
11
2edb0bde
VZ
12{\bf Note:} Any pointer returned by a method of wxFSFile is valid
13only as long as the wxFSFile object exists. For example a call to GetStream()
11b63f34 14doesn't {\it create} the stream but only returns the pointer to it. In
f6bcfd97 15other words after 10 calls to GetStream() you will obtain ten identical
11b63f34
VS
16pointers.
17
18\wxheading{Derived from}
19
9704b250
VS
20\helpref{wxObject}{wxobject}
21
22\wxheading{Include files}
23
24<wx/filesys.h>
11b63f34
VS
25
26\wxheading{See Also}
27
28\helpref{wxFileSystemHandler}{wxfilesystemhandler},
fa482912 29\helpref{wxFileSystem}{wxfilesystem},
11b63f34
VS
30\helpref{Overview}{fs}
31
32\latexignore{\rtfignore{\wxheading{Members}}}
33
34\membersection{wxFSFile::wxFSFile}\label{wxfsfilewxfsfile}
35
36\func{}{wxFSFile}{\param{wxInputStream }{*stream}, \param{const wxString\& }{loc}, \param{const wxString\& }{mimetype}, \param{const wxString\& }{anchor}}
37
38Constructor. You probably won't use it. See Notes for details.
39
40\wxheading{Parameters}
41
42\docparam{stream}{The input stream that will be used to access data}
43
44\docparam{location}{The full location (aka filename) of the file}
45
46\docparam{mimetype}{MIME type of this file. Mime type is either extension-based or HTTP Content-Type}
47
48\docparam{anchor}{Anchor. See \helpref{GetAnchor()}{wxfsfilegetanchor} for details.}
49
fa482912 50If you are not sure of the meaning of these params, see the description of the GetXXXX()
11b63f34
VS
51functions.
52
53\wxheading{Notes}
54
f6bcfd97 55It is seldom used by the application programmer but you will need it if
fa482912
JS
56you are writing your own virtual FS. For example you may need something
57similar to wxMemoryInputStream, but because wxMemoryInputStream
58doesn't free the memory when destroyed and thus passing a memory stream
11b63f34 59pointer into wxFSFile constructor would lead to memory leaks, you
fa482912 60can write your own class derived from wxFSFile:
11b63f34
VS
61
62\begin{verbatim}
63class wxMyFSFile : public wxFSFile
64{
65 private:
66 void *m_Mem;
67 public:
68 wxMyFSFile(.....)
69 ~wxMyFSFile() {free(m_Mem);}
70 // of course dtor is virtual ;-)
71};
72\end{verbatim}
73
559fe022 74\membersection{wxFSFile::GetAnchor}\label{wxfsfilegetanchor}
11b63f34 75
559fe022 76\constfunc{const wxString\&}{GetAnchor}{\void}
11b63f34 77
559fe022
VS
78Returns anchor (if present). The term of {\bf anchor} can be easily
79explained using few examples:
11b63f34 80
559fe022
VS
81\begin{verbatim}
82index.htm#anchor /* 'anchor' is anchor */
83index/wx001.htm /* NO anchor here! */
84archive/main.zip#zip:index.htm#global /* 'global' */
85archive/main.zip#zip:index.htm /* NO anchor here! */
86\end{verbatim}
11b63f34 87
fa482912
JS
88Usually an anchor is presented only if the MIME type is 'text/html'.
89But it may have some meaning with other files;
90for example myanim.avi\#200 may refer to position in animation
91or reality.wrl\#MyView may refer to a predefined view in VRML.
11b63f34
VS
92
93\membersection{wxFSFile::GetLocation}\label{wxfsfilegetlocation}
94
95\constfunc{const wxString\&}{GetLocation}{\void}
96
97Returns full location of the file, including path and protocol.
98Examples :
99
100\begin{verbatim}
fc2171bd 101http://www.wxwidgets.org
11b63f34
VS
102http://www.ms.mff.cuni.cz/~vsla8348/wxhtml/archive.zip#zip:info.txt
103file:/home/vasek/index.htm
104relative-file.htm
105\end{verbatim}
106
559fe022 107\membersection{wxFSFile::GetMimeType}\label{wxfsfilegetmimetype}
11b63f34 108
559fe022 109\constfunc{const wxString\&}{GetMimeType}{\void}
11b63f34 110
fa482912 111Returns the MIME type of the content of this file. It is either
559fe022
VS
112extension-based (see wxMimeTypesManager) or extracted from
113HTTP protocol Content-Type header.
11b63f34 114
6ee654e6
VS
115\membersection{wxFSFile::GetModificationTime}\label{wxfsfilegetmodificationtime}
116
117\constfunc{wxDateTime}{GetModificationTime}{\void}
118
119Returns time when this file was modified.
120
559fe022 121\membersection{wxFSFile::GetStream}\label{wxfsfilegetstream}
11b63f34 122
559fe022
VS
123\constfunc{wxInputStream*}{GetStream}{\void}
124
125Returns pointer to the stream. You can use the returned
126stream to directly access data. You may suppose
127that the stream provide Seek and GetSize functionality
fa482912
JS
128(even in the case of the HTTP protocol which doesn't provide
129this by default. wxHtml uses local cache to work around
130this and to speed up the connection).
22d6efa8 131