Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
AndroidAbstractFileEngine Class Reference
+ Inheritance diagram for AndroidAbstractFileEngine:
+ Collaboration diagram for AndroidAbstractFileEngine:

Public Member Functions

 AndroidAbstractFileEngine (AAssetManager *assetManager, const QString &fileName)
 
 ~AndroidAbstractFileEngine ()
 
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.
 
bool caseSensitive () const override
 Should return true if the underlying file system is case-sensitive; otherwise return false.
 
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.
 
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.
 
IteratorUniquePtr beginEntryList (const QString &, QDir::Filters 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 QStringList entryList (QDir::Filters filters, const QStringList &filterNames) const
 Requests that a list of all the files matching the filters list based on the filterNames in the file engine's directory are returned.
 
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 bool 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().
 
virtual bool extension (Extension extension, const ExtensionOption *option=nullptr, ExtensionReturn *output=nullptr)
 
virtual bool supportsExtension (Extension extension) const
 

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  Extension { AtEndExtension , FastReadLineExtension , MapExtension , UnMapExtension }
 
typedef QAbstractFileEngineIterator Iterator
 
using IteratorUniquePtr = std::unique_ptr<Iterator>
 
- Static Public Member Functions inherited from QAbstractFileEngine
static std::unique_ptr< QAbstractFileEnginecreate (const QString &fileName)
 Creates and returns a QAbstractFileEngine suitable for processing fileName.
 
- 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 203 of file qandroidassetsfileenginehandler.cpp.

Constructor & Destructor Documentation

◆ AndroidAbstractFileEngine()

AndroidAbstractFileEngine::AndroidAbstractFileEngine ( AAssetManager * assetManager,
const QString & fileName )
inlineexplicit

Definition at line 206 of file qandroidassetsfileenginehandler.cpp.

References fileName, and setFileName().

+ Here is the call graph for this function:

◆ ~AndroidAbstractFileEngine()

AndroidAbstractFileEngine::~AndroidAbstractFileEngine ( )
inline

Definition at line 212 of file qandroidassetsfileenginehandler.cpp.

References close().

+ Here is the call graph for this function:

Member Function Documentation

◆ beginEntryList()

IteratorUniquePtr AndroidAbstractFileEngine::beginEntryList ( const QString & path,
QDir::Filters filters,
const QStringList & filterNames )
inlineoverridevirtual

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 355 of file qandroidassetsfileenginehandler.cpp.

References filters, and AssetItem::type.

◆ caseSensitive()

bool AndroidAbstractFileEngine::caseSensitive ( ) const
inlineoverridevirtual

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

Reimplemented from QAbstractFileEngine.

Definition at line 266 of file qandroidassetsfileenginehandler.cpp.

◆ close()

bool AndroidAbstractFileEngine::close ( )
inlineoverridevirtual

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

The default implementation always returns false.

Reimplemented from QAbstractFileEngine.

Definition at line 228 of file qandroidassetsfileenginehandler.cpp.

Referenced by ~AndroidAbstractFileEngine(), open(), and setFileName().

+ Here is the caller graph for this function:

◆ fileFlags()

FileFlags AndroidAbstractFileEngine::fileFlags ( FileFlags type = FileInfoAll) const
inlineoverridevirtual

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 271 of file qandroidassetsfileenginehandler.cpp.

References QAbstractFileEngine::DirectoryType, QAbstractFileEngine::ExistsFlag, QAbstractFileEngine::ReadGroupPerm, QAbstractFileEngine::ReadOtherPerm, QAbstractFileEngine::ReadOwnerPerm, QAbstractFileEngine::ReadUserPerm, and AssetItem::type.

◆ fileName()

QString AndroidAbstractFileEngine::fileName ( FileName file = DefaultName) const
inlineoverridevirtual

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 284 of file qandroidassetsfileenginehandler.cpp.

References QAbstractFileEngine::AbsoluteName, QAbstractFileEngine::AbsolutePathName, QAbstractFileEngine::BaseName, QAbstractFileEngine::CanonicalName, QAbstractFileEngine::CanonicalPathName, QAbstractFileEngine::DefaultName, file, QString::lastIndexOf(), QString::left(), QString::mid(), QAbstractFileEngine::PathName, pos(), and prefixedPath().

+ Here is the call graph for this function:

◆ open()

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

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 217 of file qandroidassetsfileenginehandler.cpp.

References close(), Q_UNUSED, QString::toUtf8(), AssetItem::type, and QIODeviceBase::WriteOnly.

+ Here is the call graph for this function:

◆ pos()

qint64 AndroidAbstractFileEngine::pos ( ) const
inlineoverridevirtual

Returns the current file position.

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

Reimplemented from QAbstractFileEngine.

Definition at line 245 of file qandroidassetsfileenginehandler.cpp.

Referenced by fileName(), and seek().

+ Here is the caller graph for this function:

◆ read()

qint64 AndroidAbstractFileEngine::read ( char * data,
qint64 maxlen )
inlineoverridevirtual

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 259 of file qandroidassetsfileenginehandler.cpp.

◆ seek()

bool AndroidAbstractFileEngine::seek ( qint64 offset)
inlineoverridevirtual

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 252 of file qandroidassetsfileenginehandler.cpp.

References pos().

+ Here is the call graph for this function:

◆ setFileName()

void AndroidAbstractFileEngine::setFileName ( const QString & file)
inlineoverridevirtual

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 309 of file qandroidassetsfileenginehandler.cpp.

References cleanedAssetPath(), close(), file, FolderIterator::fromCache(), lock, AssetItem::name, AssetItem::size, QString::toUtf8(), and AssetItem::type.

Referenced by AndroidAbstractFileEngine().

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

◆ size()

qint64 AndroidAbstractFileEngine::size ( ) const
inlineoverridevirtual

Returns the size of the file.

Reimplemented from QAbstractFileEngine.

Definition at line 238 of file qandroidassetsfileenginehandler.cpp.

References AssetItem::size.


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