Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QAndroidApkFileEngine Class Reference

#include <qandroidapkfileengine.h>

Inheritance diagram for QAndroidApkFileEngine:
Collaboration diagram for QAndroidApkFileEngine:

Classes

struct  FileInfo

Public Member Functions

 QAndroidApkFileEngine (const QString &fileName)
 ~QAndroidApkFileEngine ()
bool open (QIODevice::OpenMode openMode, std::optional< QFile::Permissions > permissions) override
 Opens the file in the specified mode.
bool close () override
 Closes the file, returning true if successful; otherwise returns false.
qint64 size () const override
 Returns the size of the file.
qint64 pos () const override
 Returns the current file position.
bool seek (qint64 pos) override
 Sets the file position to the given offset.
qint64 read (char *data, qint64 maxlen) override
 Reads a number of characters from the file into data.
FileFlags fileFlags (FileFlags type=FileInfoAll) const override
 This function should return the set of OR'd flags that are true for the file engine's file, and that are in the type's OR'd members.
bool caseSensitive () const override
 Should return true if the underlying file system is case-sensitive; otherwise return false.
QString fileName (FileName file=DefaultName) const override
 Return the file engine's current file name in the format specified by file.
void setFileName (const QString &file) override
 Sets the file engine's file name to file.
ucharmap (qint64 offset, qint64 size, QFile::MemoryMapFlags flags)
bool extension (Extension extension, const ExtensionOption *option=nullptr, ExtensionReturn *output=nullptr) override
bool supportsExtension (Extension extension) const override
IteratorUniquePtr beginEntryList (const QString &, QDirListing::IteratorFlags filters, const QStringList &filterNames) override
 Returns a QAbstractFileEngine::IteratorUniquePtr, that can be used to iterate over the entries in path, using filters for entry filtering and filterNames for name filtering.
Public Member Functions inherited from QAbstractFileEngine
virtual ~QAbstractFileEngine ()
 Destroys the QAbstractFileEngine.
virtual bool flush ()
 Flushes the open file, returning true if successful; otherwise returns false.
virtual bool syncToDisk ()
virtual bool isSequential () const
 Returns true if the file is a sequential access device; returns false if the file is a direct access device.
virtual bool remove ()
 Requests that the file is deleted from the file system.
virtual bool copy (const QString &newName)
 Copies the contents of this file to a file with the name newName.
virtual bool rename (const QString &newName)
 Requests that the file be renamed to newName in the file system.
virtual bool renameOverwrite (const QString &newName)
virtual bool link (const QString &newName)
 Creates a link from the file currently specified by fileName() to newName.
virtual bool mkdir (const QString &dirName, bool createParentDirectories, std::optional< QFile::Permissions > permissions=std::nullopt) const
 Requests that the directory dirName be created with the specified permissions.
virtual bool rmdir (const QString &dirName, bool recurseParentDirectories) const
 Requests that the directory dirName is deleted from the file system.
virtual bool setSize (qint64 size)
 Requests that the file be set to size size.
virtual bool isRelativePath () const
 Return true if the file referred to by this file engine has a relative path; otherwise return false.
virtual bool setPermissions (uint perms)
 Requests that the file's permissions be set to perms.
virtual QByteArray id () const
virtual uint ownerId (FileOwner) const
 If owner is OwnerUser return the ID of the user who owns the file.
virtual QString owner (FileOwner) const
 If owner is OwnerUser return the name of the user who owns the file.
virtual bool setFileTime (const QDateTime &newDate, QFile::FileTime time)
virtual QDateTime fileTime (QFile::FileTime time) const
 If time is BirthTime, return when the file was born (created).
virtual int handle () const
 Returns the native file handle for this file engine.
virtual TriStateResult cloneTo (QAbstractFileEngine *target)
bool atEnd () const
ucharmap (qint64 offset, qint64 size, QFile::MemoryMapFlags flags)
bool unmap (uchar *ptr)
virtual IteratorUniquePtr endEntryList ()
virtual qint64 readLine (char *data, qint64 maxlen)
 This function reads one line, terminated by a '\n' character, from the file info data.
virtual qint64 write (const char *data, qint64 len)
 Writes len bytes from data to the file.
QFile::FileError error () const
 Returns the QFile::FileError that resulted from the last failed operation.
QString errorString () const
 Returns the human-readable message appropriate to the current error reported by error().

Static Public Member Functions

static QString apkPath ()
static QString relativePath (const QString &filePath)
Static Public Member Functions inherited from QAbstractFileEngine
static std::unique_ptr< QAbstractFileEnginecreate (const QString &fileName)
 Creates and returns a QAbstractFileEngine suitable for processing fileName.

Additional Inherited Members

Public Types inherited from QAbstractFileEngine
enum  FileFlag {
  ReadOwnerPerm = 0x4000 , WriteOwnerPerm = 0x2000 , ExeOwnerPerm = 0x1000 , ReadUserPerm = 0x0400 ,
  WriteUserPerm = 0x0200 , ExeUserPerm = 0x0100 , ReadGroupPerm = 0x0040 , WriteGroupPerm = 0x0020 ,
  ExeGroupPerm = 0x0010 , ReadOtherPerm = 0x0004 , WriteOtherPerm = 0x0002 , ExeOtherPerm = 0x0001 ,
  LinkType = 0x10000 , FileType = 0x20000 , DirectoryType = 0x40000 , BundleType = 0x80000 ,
  HiddenFlag = 0x0100000 , LocalDiskFlag = 0x0200000 , ExistsFlag = 0x0400000 , RootFlag = 0x0800000 ,
  Refresh = 0x1000000 , PermsMask = 0x0000FFFF , TypesMask = 0x000F0000 , FlagsMask = 0x0FF00000 ,
  FileInfoAll = FlagsMask | PermsMask | TypesMask
}
 The permissions and types of a file, suitable for OR'ing together. More...
enum  FileName {
  DefaultName , BaseName , PathName , AbsoluteName ,
  AbsolutePathName , AbsoluteLinkTarget , CanonicalName , CanonicalPathName ,
  BundleName , JunctionName , RawLinkPath , NFileNames
}
 These values are used to request a file name in a particular format. More...
enum  FileOwner { OwnerUser , OwnerGroup }
 \value OwnerUser The user who owns the file. More...
enum class  TriStateResult : qint8 { NotSupported = -1 , Failed = 0 , Success = 1 }
enum  Extension { AtEndExtension , FastReadLineExtension , MapExtension , UnMapExtension }
typedef QAbstractFileEngineIterator Iterator
using IteratorUniquePtr = std::unique_ptr<Iterator>
Protected Member Functions inherited from QAbstractFileEngine
void setError (QFile::FileError error, const QString &str)
 Sets the error type to error, and the error string to errorString.
 QAbstractFileEngine ()
 Constructs a new QAbstractFileEngine that does not refer to any file or directory.
 QAbstractFileEngine (QAbstractFileEnginePrivate &)
Protected Attributes inherited from QAbstractFileEngine
QScopedPointer< QAbstractFileEnginePrivated_ptr

Detailed Description

Definition at line 15 of file qandroidapkfileengine.h.

Constructor & Destructor Documentation

◆ QAndroidApkFileEngine()

QAndroidApkFileEngine::QAndroidApkFileEngine ( const QString & fileName)

Definition at line 56 of file qandroidapkfileengine.cpp.

References QAndroidApkFileEngine().

Referenced by QAndroidApkFileEngine().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ~QAndroidApkFileEngine()

QAndroidApkFileEngine::~QAndroidApkFileEngine ( )

Definition at line 70 of file qandroidapkfileengine.cpp.

References close().

Here is the call graph for this function:

Member Function Documentation

◆ apkPath()

QString QAndroidApkFileEngine::apkPath ( )
static

Definition at line 75 of file qandroidapkfileengine.cpp.

◆ beginEntryList()

QAbstractFileEngine::IteratorUniquePtr QAndroidApkFileEngine::beginEntryList ( const QString & path,
QDirListing::IteratorFlags filters,
const QStringList & filterNames )
overridevirtual

Returns a QAbstractFileEngine::IteratorUniquePtr, that can be used to iterate over the entries in path, using filters for entry filtering and filterNames for name filtering.

This function is called by QDirListing to initiate directory iteration.

See also
QDirListing

Reimplemented from QAbstractFileEngine.

Definition at line 217 of file qandroidapkfileengine.cpp.

◆ caseSensitive()

bool QAndroidApkFileEngine::caseSensitive ( ) const
inlineoverridevirtual

Should return true if the underlying file system is case-sensitive; otherwise return false.

Reimplemented from QAbstractFileEngine.

Definition at line 35 of file qandroidapkfileengine.h.

◆ close()

bool QAndroidApkFileEngine::close ( )
overridevirtual

Closes the file, returning true if successful; otherwise returns false.

The default implementation always returns false.

Reimplemented from QAbstractFileEngine.

Definition at line 104 of file qandroidapkfileengine.cpp.

Referenced by ~QAndroidApkFileEngine().

Here is the caller graph for this function:

◆ extension()

bool QAndroidApkFileEngine::extension ( Extension extension,
const ExtensionOption * option = nullptr,
ExtensionReturn * output = nullptr )
overridevirtual
Since
4.3

This virtual function can be reimplemented in a QAbstractFileEngine subclass to provide support for extensions. The option argument is provided as input to the extension, and this function can store output results in output.

The behavior of this function is determined by extension; see the Extension documentation for details.

You can call supportsExtension() to check if an extension is supported by the file engine.

By default, no extensions are supported, and this function returns false.

See also
supportsExtension(), Extension

Reimplemented from QAbstractFileEngine.

Definition at line 197 of file qandroidapkfileengine.cpp.

◆ fileFlags()

QAbstractFileEngine::FileFlags QAndroidApkFileEngine::fileFlags ( FileFlags type = FileInfoAll) const
overridevirtual

This function should return the set of OR'd flags that are true for the file engine's file, and that are in the type's OR'd members.

In your reimplementation you can use the type argument as an optimization hint and only return the OR'd set of members that are true and that match those in type; in other words you can ignore any members not mentioned in type, thus avoiding some potentially expensive lookups or system calls.

See also
setFileName()

Reimplemented from QAbstractFileEngine.

Definition at line 140 of file qandroidapkfileengine.cpp.

◆ fileName()

QString QAndroidApkFileEngine::fileName ( FileName file = DefaultName) const
overridevirtual

Return the file engine's current file name in the format specified by file.

If you don't handle some FileName possibilities, return the file name set in setFileName() when an unhandled format is requested.

See also
setFileName(), FileName

Reimplemented from QAbstractFileEngine.

Definition at line 153 of file qandroidapkfileengine.cpp.

◆ map()

uchar * QAndroidApkFileEngine::map ( qint64 offset,
qint64 size,
QFile::MemoryMapFlags flags )

Definition at line 177 of file qandroidapkfileengine.cpp.

◆ open()

bool QAndroidApkFileEngine::open ( QIODevice::OpenMode openMode,
std::optional< QFile::Permissions > permissions )
overridevirtual

Opens the file in the specified mode.

Returns true if the file was successfully opened; otherwise returns false.

The mode is an OR combination of QIODevice::OpenMode and QIODevice::HandlingMode values.

If the file is created as a result of this call, its permissions are set according to permissision. Null value means an implementation- specific default.

Reimplemented from QAbstractFileEngine.

Definition at line 87 of file qandroidapkfileengine.cpp.

◆ pos()

qint64 QAndroidApkFileEngine::pos ( ) const
overridevirtual

Returns the current file position.

This is the position of the data read/write head of the file.

Reimplemented from QAbstractFileEngine.

Definition at line 114 of file qandroidapkfileengine.cpp.

◆ read()

qint64 QAndroidApkFileEngine::read ( char * data,
qint64 maxlen )
overridevirtual

Reads a number of characters from the file into data.

At most maxlen characters will be read.

Returns -1 if a fatal error occurs, or 0 if there are no bytes to read.

Reimplemented from QAbstractFileEngine.

Definition at line 124 of file qandroidapkfileengine.cpp.

◆ relativePath()

QString QAndroidApkFileEngine::relativePath ( const QString & filePath)
static

Definition at line 81 of file qandroidapkfileengine.cpp.

◆ seek()

bool QAndroidApkFileEngine::seek ( qint64 offset)
overridevirtual

Sets the file position to the given offset.

Returns true if the position was successfully set; otherwise returns false.

The offset is from the beginning of the file, unless the file is sequential.

See also
isSequential()

Reimplemented from QAbstractFileEngine.

Definition at line 119 of file qandroidapkfileengine.cpp.

◆ setFileName()

void QAndroidApkFileEngine::setFileName ( const QString & file)
overridevirtual

Sets the file engine's file name to file.

This file name is the file that the rest of the virtual functions will operate on.

See also
rename()

Reimplemented from QAbstractFileEngine.

Definition at line 170 of file qandroidapkfileengine.cpp.

◆ size()

qint64 QAndroidApkFileEngine::size ( ) const
overridevirtual

Returns the size of the file.

Reimplemented from QAbstractFileEngine.

Definition at line 109 of file qandroidapkfileengine.cpp.

◆ supportsExtension()

bool QAndroidApkFileEngine::supportsExtension ( Extension extension) const
overridevirtual
Since
4.3

This virtual function returns true if the file engine supports extension; otherwise, false is returned. By default, no extensions are supported.

See also
extension()

Reimplemented from QAbstractFileEngine.

Definition at line 209 of file qandroidapkfileengine.cpp.


The documentation for this class was generated from the following files: