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 55 of file HeifImport.cpp.

Constructor & Destructor Documentation

◆ Reader_QIODevice()

Reader_QIODevice::Reader_QIODevice ( QIODevice * device)
inline

Definition at line 57 of file HeifImport.cpp.

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

Member Function Documentation

◆ get_position()

int64_t Reader_QIODevice::get_position ( ) const
inlineoverride

Definition at line 63 of file HeifImport.cpp.

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

References m_device.

◆ read()

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

Definition at line 67 of file HeifImport.cpp.

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

References m_device.

◆ seek()

int Reader_QIODevice::seek ( int64_t position)
inlineoverride

Definition at line 73 of file HeifImport.cpp.

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

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 77 of file HeifImport.cpp.

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

References m_total_length.

Member Data Documentation

◆ m_device

QIODevice* Reader_QIODevice::m_device
private

Definition at line 85 of file HeifImport.cpp.

◆ m_total_length

int64_t Reader_QIODevice::m_total_length
private

Definition at line 86 of file HeifImport.cpp.


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