Krita Source Code Documentation
Loading...
Searching...
No Matches
Reader_QIODevice Class Reference
+ Inheritance diagram for Reader_QIODevice:

Public Member Functions

int64_t get_position () const override
 
int read (void *data, size_t size) override
 
 Reader_QIODevice (QIODevice *device)
 
int seek (int64_t position) override
 
heif_reader_grow_status wait_for_file_size (int64_t target_size) override
 

Private Attributes

QIODevice * m_device
 
int64_t m_total_length
 

Detailed Description

Definition at line 54 of file HeifImport.cpp.

Constructor & Destructor Documentation

◆ Reader_QIODevice()

Reader_QIODevice::Reader_QIODevice ( QIODevice * device)
inline

Definition at line 56 of file HeifImport.cpp.

57 : m_device(device)
58 , m_total_length(m_device->bytesAvailable())
59 {
60 }
QIODevice * m_device
int64_t m_total_length

Member Function Documentation

◆ get_position()

int64_t Reader_QIODevice::get_position ( ) const
inlineoverride

Definition at line 62 of file HeifImport.cpp.

63 {
64 return m_device->pos();
65 }

References m_device.

◆ read()

int Reader_QIODevice::read ( void * data,
size_t size )
inlineoverride

Definition at line 66 of file HeifImport.cpp.

67 {
68 qint64 readSize =
69 m_device->read(static_cast<char *>(data), static_cast<qint64>(size));
70 return (readSize > 0 && readSize != static_cast<qint64>(size));
71 }

References m_device.

◆ seek()

int Reader_QIODevice::seek ( int64_t position)
inlineoverride

Definition at line 72 of file HeifImport.cpp.

73 {
74 return !m_device->seek(position);
75 }

References m_device.

◆ wait_for_file_size()

heif_reader_grow_status Reader_QIODevice::wait_for_file_size ( int64_t target_size)
inlineoverride

Definition at line 76 of file HeifImport.cpp.

77 {
78 return (target_size > m_total_length)
79 ? heif_reader_grow_status_size_beyond_eof
80 : heif_reader_grow_status_size_reached;
81 }

References m_total_length.

Member Data Documentation

◆ m_device

QIODevice* Reader_QIODevice::m_device
private

Definition at line 84 of file HeifImport.cpp.

◆ m_total_length

int64_t Reader_QIODevice::m_total_length
private

Definition at line 85 of file HeifImport.cpp.


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