<class name="QFSFileEngine" doc="/**
&lt;p&gt;The &lt;a href=&quot;QFSFileEngine.html#QFSFileEngine(java.lang.String)&quot;&gt;&lt;tt&gt;QFSFileEngine&lt;/tt&gt;&lt;/a&gt; class implements Qt's default file engine.&lt;/p&gt;
&lt;p&gt;This class is part of the file engine framework in Qt. If you only want to access files or directories, use &lt;a href=&quot;QFile.html&quot;&gt;&lt;tt&gt;QFile&lt;/tt&gt;&lt;/a&gt;, &lt;a href=&quot;QFileInfo.html&quot;&gt;&lt;tt&gt;QFileInfo&lt;/tt&gt;&lt;/a&gt; or &lt;a href=&quot;QDir.html&quot;&gt;&lt;tt&gt;QDir&lt;/tt&gt;&lt;/a&gt; instead.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;QFSFileEngine.html#QFSFileEngine(java.lang.String)&quot;&gt;&lt;tt&gt;QFSFileEngine&lt;/tt&gt;&lt;/a&gt; is the default file engine for accessing regular files. It is provided for convenience; by subclassing this class, you can alter its behavior slightly, without having to write a complete &lt;a href=&quot;QAbstractFileEngine.html#QAbstractFileEngine()&quot;&gt;&lt;tt&gt;QAbstractFileEngine&lt;/tt&gt;&lt;/a&gt; subclass. To install your custom file engine, you must also subclass &lt;a href=&quot;QAbstractFileEngineHandler.html&quot;&gt;&lt;tt&gt;QAbstractFileEngineHandler&lt;/tt&gt;&lt;/a&gt; and create an instance of your handler.&lt;/p&gt;
&lt;p&gt;It can also be useful to create a &lt;a href=&quot;QFSFileEngine.html#QFSFileEngine(java.lang.String)&quot;&gt;&lt;tt&gt;QFSFileEngine&lt;/tt&gt;&lt;/a&gt; object directly if you need to use the local file system inside QAbstractFileEngine::create(), in order to avoid recursion (as higher-level classes tend to call QAbstractFileEngine::create()).&lt;/p&gt;
 */">
    <method name="public QFSFileEngine()" doc="/**
&lt;p&gt;Constructs a &lt;a href=&quot;QFSFileEngine.html#QFSFileEngine(java.lang.String)&quot;&gt;&lt;tt&gt;QFSFileEngine&lt;/tt&gt;&lt;/a&gt;.&lt;/p&gt;
 */"/>
    <method name="public QFSFileEngine(java.lang.String file)" doc="/**
&lt;p&gt;Constructs a &lt;a href=&quot;QFSFileEngine.html#QFSFileEngine(java.lang.String)&quot;&gt;&lt;tt&gt;QFSFileEngine&lt;/tt&gt;&lt;/a&gt; for the file name &lt;tt&gt;file&lt;/tt&gt;.&lt;/p&gt;
 */"/>
    <method name="public final com.trolltech.qt.core.QAbstractFileEngineIterator beginEntryList(com.trolltech.qt.core.QDir.Filters filters, java.util.List&lt;java.lang.String&gt; filterNames)" doc="/**
&lt;p&gt;Returns an instance of a &lt;a href=&quot;QAbstractFileEngineIterator.html&quot;&gt;&lt;tt&gt;QAbstractFileEngineIterator&lt;/tt&gt;&lt;/a&gt; using &lt;tt&gt;filters&lt;/tt&gt; for entry filtering and &lt;tt&gt;filterNames&lt;/tt&gt; for name filtering. This function is called by &lt;a href=&quot;QDirIterator.html&quot;&gt;&lt;tt&gt;QDirIterator&lt;/tt&gt;&lt;/a&gt; to initiate directory iteration.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;QDirIterator.html&quot;&gt;&lt;tt&gt;QDirIterator&lt;/tt&gt;&lt;/a&gt; takes ownership of the returned instance, and deletes it when it's done.&lt;/p&gt;

@see &lt;a href=&quot;QDirIterator.html&quot;&gt;&lt;tt&gt;QDirIterator&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final com.trolltech.qt.core.QAbstractFileEngineIterator endEntryList()" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;
 */"/>
    <method name="public final boolean open(com.trolltech.qt.core.QIODevice.OpenMode flags, int fd)" doc="/**
&lt;p&gt;Opens the file descriptor &lt;tt&gt;fd&lt;/tt&gt; in &lt;tt&gt;flags&lt;/tt&gt; mode. Returns true on success; otherwise returns false.&lt;/p&gt;
 */"/>
    <method name="public boolean caseSensitive()" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;
 */"/>
    <method name="public boolean close()" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;
 */"/>
    <method name="public boolean copy(java.lang.String newName)" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;
 */"/>
    <method name="public java.util.List&lt;java.lang.String&gt; entryList(com.trolltech.qt.core.QDir.Filters filters, java.util.List&lt;java.lang.String&gt; filterNames)" doc="/**
&lt;p&gt;Requests that a list of all the files matching the &lt;tt&gt;filters&lt;/tt&gt; list based on the &lt;tt&gt;filterNames&lt;/tt&gt; in the file engine's directory are returned.&lt;/p&gt;
&lt;p&gt;Should return an empty list if the file engine refers to a file rather than a directory, or if the directory is unreadable or does not exist or if nothing matches the specifications.&lt;/p&gt;
&lt;p&gt;This virtual function must be reimplemented by all subclasses.&lt;/p&gt;

@see &lt;a href=&quot;QFSFileEngine.html#setFileName(java.lang.String)&quot;&gt;&lt;tt&gt;setFileName&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public com.trolltech.qt.core.QAbstractFileEngine.FileFlags fileFlags(com.trolltech.qt.core.QAbstractFileEngine.FileFlags type)" doc="/**
&lt;p&gt;This function should return the set of OR'd flags that are true for the file engine's file, and that are in the &lt;tt&gt;type&lt;/tt&gt;'s OR'd members.&lt;/p&gt;
&lt;p&gt;In your reimplementation you can use the &lt;tt&gt;type&lt;/tt&gt; argument as an optimization hint and only return the OR'd set of members that are true and that match those in &lt;tt&gt;type&lt;/tt&gt;; in other words you can ignore any members not mentioned in &lt;tt&gt;type&lt;/tt&gt;, thus avoiding some potentially expensive lookups or system calls.&lt;/p&gt;
&lt;p&gt;This virtual function must be reimplemented by all subclasses.&lt;/p&gt;

@see &lt;a href=&quot;QFSFileEngine.html#setFileName(java.lang.String)&quot;&gt;&lt;tt&gt;setFileName&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public java.lang.String fileName(com.trolltech.qt.core.QAbstractFileEngine.FileName file)" doc="/**
&lt;p&gt;Return the file engine's current file name in the format specified by &lt;tt&gt;file&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;If you don't handle some &lt;tt&gt;FileName&lt;/tt&gt; possibilities, return the file name set in &lt;a href=&quot;QFSFileEngine.html#setFileName(java.lang.String)&quot;&gt;&lt;tt&gt;setFileName&lt;/tt&gt;&lt;/a&gt; when an unhandled format is requested.&lt;/p&gt;
&lt;p&gt;This virtual function must be reimplemented by all subclasses.&lt;/p&gt;

@see &lt;a href=&quot;QFSFileEngine.html#setFileName(java.lang.String)&quot;&gt;&lt;tt&gt;setFileName&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QAbstractFileEngine.html#FileName-enum&quot;&gt;&lt;tt&gt;FileName&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public com.trolltech.qt.core.QDateTime fileTime(com.trolltech.qt.core.QAbstractFileEngine.FileTime time)" doc="/**
&lt;p&gt;If &lt;tt&gt;time&lt;/tt&gt; is &lt;tt&gt;CreationTime&lt;/tt&gt;, return when the file was created. If &lt;tt&gt;time&lt;/tt&gt; is &lt;tt&gt;ModificationTime&lt;/tt&gt;, return when the file was most recently modified. If &lt;tt&gt;time&lt;/tt&gt; is &lt;tt&gt;AccessTime&lt;/tt&gt;, return when the file was most recently accessed (e.g&amp;#x2e; read or written). If the time cannot be determined return QDateTime() (an invalid date time).&lt;/p&gt;
&lt;p&gt;This virtual function must be reimplemented by all subclasses.&lt;/p&gt;

@see &lt;a href=&quot;QFSFileEngine.html#setFileName(java.lang.String)&quot;&gt;&lt;tt&gt;setFileName&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QDateTime.html&quot;&gt;&lt;tt&gt;QDateTime&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;QDateTime::isValid&lt;/tt&gt;
@see &lt;a href=&quot;QAbstractFileEngine.html#FileTime-enum&quot;&gt;&lt;tt&gt;FileTime&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public boolean flush()" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;
 */"/>
    <method name="public int handle()" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;
 */"/>
    <method name="public boolean isRelativePath()" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;
 */"/>
    <method name="public boolean isSequential()" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;
 */"/>
    <method name="public boolean link(java.lang.String newName)" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;
 */"/>
    <method name="public boolean mkdir(java.lang.String dirName, boolean createParentDirectories)" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;
 */"/>
    <method name="public boolean open(com.trolltech.qt.core.QIODevice.OpenMode openMode)" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;
 */"/>
    <method name="public java.lang.String owner(com.trolltech.qt.core.QAbstractFileEngine.FileOwner arg__1)" doc="/**
&lt;p&gt;If &lt;tt&gt;arg__1&lt;/tt&gt; is &lt;tt&gt;OwnerUser&lt;/tt&gt; return the name of the user who owns the file. If &lt;tt&gt;arg__1&lt;/tt&gt; is &lt;tt&gt;OwnerGroup&lt;/tt&gt; return the name of the group that own the file. If you can't determine the owner return &lt;a href=&quot;%2E%2E/porting4.html#qstring&quot;&gt;&lt;tt&gt;QString&lt;/tt&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This virtual function must be reimplemented by all subclasses.&lt;/p&gt;

@see &lt;a href=&quot;QFSFileEngine.html#ownerId(com.trolltech.qt.core.QAbstractFileEngine.FileOwner)&quot;&gt;&lt;tt&gt;ownerId&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QFSFileEngine.html#setFileName(java.lang.String)&quot;&gt;&lt;tt&gt;setFileName&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QAbstractFileEngine.html#FileOwner-enum&quot;&gt;&lt;tt&gt;FileOwner&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public int ownerId(com.trolltech.qt.core.QAbstractFileEngine.FileOwner arg__1)" doc="/**
&lt;p&gt;If &lt;tt&gt;arg__1&lt;/tt&gt; is &lt;tt&gt;OwnerUser&lt;/tt&gt; return the ID of the user who owns the file. If &lt;tt&gt;arg__1&lt;/tt&gt; is &lt;tt&gt;OwnerGroup&lt;/tt&gt; return the ID of the group that own the file. If you can't determine the owner return -2.&lt;/p&gt;
&lt;p&gt;This virtual function must be reimplemented by all subclasses.&lt;/p&gt;

@see &lt;a href=&quot;QFSFileEngine.html#owner(com.trolltech.qt.core.QAbstractFileEngine.FileOwner)&quot;&gt;&lt;tt&gt;owner&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QFSFileEngine.html#setFileName(java.lang.String)&quot;&gt;&lt;tt&gt;setFileName&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QAbstractFileEngine.html#FileOwner-enum&quot;&gt;&lt;tt&gt;FileOwner&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public long pos()" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;
 */"/>
    <method name="public long read(com.trolltech.qt.QNativePointer data, long maxlen)" doc="/**
&lt;p&gt;Reads a number of characters from the file into &lt;tt&gt;data&lt;/tt&gt;. At most &lt;tt&gt;maxlen&lt;/tt&gt; characters will be read.&lt;/p&gt;
&lt;p&gt;Returns -1 if a fatal error occurs, or 0 if there are no bytes to read.&lt;/p&gt;
 */"/>
    <method name="public long readLine(com.trolltech.qt.QNativePointer data, long maxlen)" doc="/**
&lt;p&gt;This function reads one line, terminated by a '\n' character, from the file info &lt;tt&gt;data&lt;/tt&gt;. At most &lt;tt&gt;maxlen&lt;/tt&gt; characters will be read. The end-of-line character is included.&lt;/p&gt;
 */"/>
    <method name="public boolean remove()" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;
 */"/>
    <method name="public boolean rename(java.lang.String newName)" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;
 */"/>
    <method name="public boolean rmdir(java.lang.String dirName, boolean recurseParentDirectories)" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;
 */"/>
    <method name="public boolean seek(long arg__1)" doc="/**
&lt;p&gt;Sets the file position to the given &lt;tt&gt;arg__1&lt;/tt&gt;. Returns true if the position was successfully set; otherwise returns false.&lt;/p&gt;
&lt;p&gt;The offset is from the beginning of the file, unless the file is sequential.&lt;/p&gt;

@see &lt;a href=&quot;QFSFileEngine.html#isSequential()&quot;&gt;&lt;tt&gt;isSequential&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public void setFileName(java.lang.String file)" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;

@see &lt;a href=&quot;QFSFileEngine.html#fileName(com.trolltech.qt.core.QAbstractFileEngine.FileName)&quot;&gt;&lt;tt&gt;fileName&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public boolean setPermissions(int perms)" doc="/**
&lt;p&gt;Requests that the file's permissions be set to &lt;tt&gt;perms&lt;/tt&gt;. The argument perms will be set to the OR-ed together combination of QAbstractFileEngine::FileInfo, with only the QAbstractFileEngine::PermsMask being honored. If the operations succceeds return true; otherwise return false;&lt;/p&gt;
&lt;p&gt;This virtual function must be reimplemented by all subclasses.&lt;/p&gt;

@see &lt;a href=&quot;QFSFileEngine.html#size()&quot;&gt;&lt;tt&gt;size&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public boolean setSize(long size)" doc="/**
&lt;p&gt;Requests that the file be set to size &lt;tt&gt;size&lt;/tt&gt;. If &lt;tt&gt;size&lt;/tt&gt; is larger than the current file then it is filled with 0's, if smaller it is simply truncated. If the operations succceeds return true; otherwise return false;&lt;/p&gt;
&lt;p&gt;This virtual function must be reimplemented by all subclasses.&lt;/p&gt;

@see &lt;a href=&quot;QFSFileEngine.html#size()&quot;&gt;&lt;tt&gt;size&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public long size()" doc="/**
&lt;p&gt;This function is reimplemented for internal reasons.&lt;/p&gt;

@see &lt;a href=&quot;QFSFileEngine.html#setSize(long)&quot;&gt;&lt;tt&gt;setSize&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public boolean supportsExtension(com.trolltech.qt.core.QAbstractFileEngine.Extension extension)" doc="/**
&lt;p&gt;This virtual function returns true if the file engine supports &lt;tt&gt;extension&lt;/tt&gt;; otherwise, false is returned. By default, no extensions are supported.&lt;/p&gt;

@see &lt;tt&gt;extension&lt;/tt&gt; */"/>
    <method name="public long write(com.trolltech.qt.QNativePointer data, long len)" doc="/**
&lt;p&gt;Writes &lt;tt&gt;len&lt;/tt&gt; bytes from &lt;tt&gt;data&lt;/tt&gt; to the file. Returns the number of characters written on success; otherwise returns -1.&lt;/p&gt;
 */"/>
    <method name="public native static java.lang.String currentPath(java.lang.String path)" doc="/**
&lt;p&gt;Returns the canonicalized form of the current path used by the file engine for the drive specified by &lt;tt&gt;path&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;On Windows, each drive has its own current directory, so a different path is returned for file names that include different drive names (e.g&amp;#x2e; A: or C:).&lt;/p&gt;

@see &lt;a href=&quot;QFSFileEngine.html#setCurrentPath(java.lang.String)&quot;&gt;&lt;tt&gt;setCurrentPath&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public static java.lang.String currentPath()" doc="/**
&lt;p&gt;Equivalent to &lt;a href=&quot;QFSFileEngine.html#currentPath(java.lang.String)&quot;&gt;&lt;tt&gt;currentPath&lt;/tt&gt;&lt;/a&gt;(QString()). */"/>
    <method name="public native static java.util.List&lt;com.trolltech.qt.core.QFileInfo&gt; drives()" doc="/**
&lt;p&gt;Returns the list of drives in the file system as a list of &lt;a href=&quot;QFileInfo.html&quot;&gt;&lt;tt&gt;QFileInfo&lt;/tt&gt;&lt;/a&gt; objects. On unix and Mac OS X, only the root path is returned. On Windows, this function returns all drives (A:, C:, D:, etc.)&amp;#x2e;&lt;/p&gt;
 */"/>
    <method name="public native static java.lang.String homePath()" doc="/**
&lt;p&gt;Returns the home path of the current user.&lt;/p&gt;

@see &lt;a href=&quot;QFSFileEngine.html#rootPath()&quot;&gt;&lt;tt&gt;rootPath&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public native static java.lang.String rootPath()" doc="/**
&lt;p&gt;Returns the root path.&lt;/p&gt;

@see &lt;a href=&quot;QFSFileEngine.html#homePath()&quot;&gt;&lt;tt&gt;homePath&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public native static boolean setCurrentPath(java.lang.String path)" doc="/**
&lt;p&gt;Sets the current path (e.g&amp;#x2e;, for &lt;a href=&quot;QDir.html&quot;&gt;&lt;tt&gt;QDir&lt;/tt&gt;&lt;/a&gt;), to &lt;tt&gt;path&lt;/tt&gt;. Returns true if the new path exists; otherwise this function does nothing, and returns false.&lt;/p&gt;

@see &lt;a href=&quot;QFSFileEngine.html#currentPath(java.lang.String)&quot;&gt;&lt;tt&gt;currentPath&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public native static java.lang.String tempPath()" doc="/**
&lt;p&gt;Returns the temporary path (i.e&amp;#x2e;, a path in which it is safe to store temporary files).&lt;/p&gt;
 */"/>
</class>
