23 #include "kqiodevicegzip_p.h"
25 KQIODeviceGZip::KQIODeviceGZip(
const TQString& filename)
30 setFlags(IO_Sequential);
34 KQIODeviceGZip::~KQIODeviceGZip(
void)
40 bool KQIODeviceGZip::open(TQ_OpenMode mode)
44 if (m_filename.isEmpty())
47 if (IO_ReadOnly==mode)
49 m_gzfile=gzopen(TQFile::encodeName(m_filename),
"rb");
51 else if (IO_WriteOnly==mode)
53 m_gzfile=gzopen(TQFile::encodeName(m_filename),
"wb9");
63 void KQIODeviceGZip::close(
void)
77 gzflush(m_gzfile,Z_SYNC_FLUSH);
82 qint64 KQIODeviceGZip::size(
void) const
84 TQIODevice::Offset KQIODeviceGZip::size(
void) const
90 TQIODevice::Offset KQIODeviceGZip::at()
const
94 return gztell(m_gzfile);
97 bool KQIODeviceGZip::at(TQIODevice::Offset pos)
101 return (gzseek(m_gzfile,pos,SEEK_SET)>=0);
104 bool KQIODeviceGZip::atEnd()
const
108 return gzeof(m_gzfile);
111 bool KQIODeviceGZip::reset(
void)
115 return (gzrewind(m_gzfile)>=0);
118 TQT_TQIO_LONG KQIODeviceGZip::tqreadBlock(
char *data, TQT_TQIO_ULONG maxlen )
123 result=gzread(m_gzfile,data,maxlen);
124 if (result<0) result=0;
129 TQT_TQIO_LONG KQIODeviceGZip::tqwriteBlock(
const char *data, TQT_TQIO_ULONG len )
134 result=gzwrite(m_gzfile,(
char*)data,len);
139 int KQIODeviceGZip::getch()
143 const int ch=m_ungetchar;
149 return gzgetc(m_gzfile);
152 int KQIODeviceGZip::putch(
int ch)
156 return gzputc(m_gzfile,ch);
159 int KQIODeviceGZip::ungetch(
int ch)
kndbgstream & flush(kndbgstream &s)
Does nothing.
TDEAction * close(const TQObject *recvr, const char *slot, TDEActionCollection *parent, const char *name=0)