QSafeBitmapFileReader Class

class SafeRenderer::QSafeBitmapFileReader

The QSafeBitmapFileReader class reads the bitmap data from the file. More...

Header: #include <QSafeBitmapFileReader>
Since: QtSafeRenderer 1.0
Inherits: SafeRenderer::QSafeBitmapReader

This class was introduced in QtSafeRenderer 1.0.

Public Types

enum BitmapFileReaderException { IndexOutOfBounds, TooMany, DataCorrupted }

Public Functions

Reimplemented Public Functions

virtual const SafeRenderer::QSafeBitmap *getBitmapByID(const SafeRenderer::quint32 hash) const override
virtual void loadBitmapFile(const SafeRenderer::qchar *const file, const SafeRenderer::quint32 crc) override

Detailed Description

Reads the given bitmap file, validates it, and loads the bitmap data.

Member Type Documentation

enum QSafeBitmapFileReader::BitmapFileReaderException

This enum describes the exception values of the class QSafeBitmapFileReader

SafeRenderer::QSafeBitmapFileReader::IndexOutOfBounds2The bitmap index exceeds SafeRenderer::Constraints::MAX_AMOUNT_OF_BITMAPS.
SafeRenderer::QSafeBitmapFileReader::TooMany0The number of bitmaps exceed the MAXIMUM value.
SafeRenderer::QSafeBitmapFileReader::DataCorrupted1The read data does not pass a checksum.

Member Function Documentation


Constructs the QSafeBitmapFileReader object.

[override virtual] const SafeRenderer::QSafeBitmap *QSafeBitmapFileReader::getBitmapByID(const SafeRenderer::quint32 hash) const

Reimplements: QSafeBitmapReader::getBitmapByID(const SafeRenderer::quint32 hash) const.

Returns the pointer to the bitmap data that is identified by hash. The hash value is the hash value of the bitmap file name. Hash can be calculated with SafeRenderer::qsafe_hash function.

In case of a failure, the following exception will be thrown:

SafeRenderer::QSafeBitmapFileReader::BitmapFileReaderException::IndexOutOfBoundsThe bitmap index exceeds the value defined in SafeRenderer::Constraints::MAX_AMOUNT_OF_BITMAPS.

[override virtual] void QSafeBitmapFileReader::loadBitmapFile(const SafeRenderer::qchar *const file, const SafeRenderer::quint32 crc)

Reimplements: QSafeBitmapReader::loadBitmapFile(const SafeRenderer::qchar *const file, const SafeRenderer::quint32 crc).

Loads the given in file. The checksum of the file needs to match with crc.

In case of a failure, one of the following exceptions will be thrown:

SafeRenderer::QSafeBitmapFileReader::TooManyThe number of bitmaps exceeds the MAXIMUM value.
SafeRenderer::QSafeBitmapFileReader::BitmapFileReaderException::IndexOutOfBoundsThe bitmap index exceeds SafeRenderer::Constraints::MAX_AMOUNT_OF_BITMAPS.
SafeRenderer::QSafeBitmapFileReader::DataCorruptedThe read data does not pass a checksum.
SafeRenderer::QSafeBitmapBuffer::SizeErrorThe bitmap data is shorter than SafeRenderer::Constraints::BITMAPDATA_HEADER_SIZE.
SafeRenderer::QSafeFile::FileException::FailureToOpenThe file could not be opened for reading.
SafeRenderer::QSafeFile::FileException::SeekErrorSeek failed on the opened file. For example, a filesystem error occurred or file was a pipe.
SafeRenderer::QSafeFile::FileException::ReadErrorThe requested number of bytes could not be read from the opened file.

Available under certain Qt licenses.
Find out more.