15 #ifndef ZYPPNG_IO_IODEVICE_DEFINED 16 #define ZYPPNG_IO_IODEVICE_DEFINED 19 #include <zypp-core/zyppng/base/Base> 20 #include <zypp-core/zyppng/base/Signals> 21 #include <zypp-core/zyppng/core/ByteArray> 25 class IODevicePrivate;
44 using Ptr = std::shared_ptr<IODevice>;
48 virtual void close ();
60 int64_t
read (
char *buf, int64_t maxSize );
67 int64_t
read ( uint channel,
char *buf, int64_t maxSize );
85 virtual int64_t
channelReadLine ( uint channel,
char *buf,
const int64_t maxSize );
94 int64_t
write (
const char *data, int64_t len );
137 virtual bool open (
const OpenMode mode );
139 virtual int64_t
writeData (
const char *data, int64_t count ) = 0;
140 virtual int64_t
readData ( uint channel,
char *buffer, int64_t bufsize ) = 0;
virtual int64_t rawBytesAvailable(uint channel) const =0
uint currentReadChannel() const
ZYPP_DECLARE_FLAGS(OpenMode, OpenModeFlag)
std::weak_ptr< Base > WeakPtr
SignalProxy< void(int64_t)> sigBytesWritten()
int readChannelCount() const
virtual bool open(const OpenMode mode)
void setReadChannelCount(uint channels)
void setReadChannel(uint channel)
ByteArray channelReadLine(uint channel, int64_t maxSize=0)
ZYPP_DECLARE_PRIVATE(IODevice)
ZYPP_DECLARE_OPERATORS_FOR_FLAGS(IODevice::OpenMode)
virtual int64_t writeData(const char *data, int64_t count)=0
virtual void readChannelChanged(uint channel)=0
int64_t write(const ByteArray &data)
ByteArray read(int64_t maxSize)
SignalProxy< void(uint)> sigChannelReadyRead()
SignalProxy< void()> sigReadyRead()
SignalProxy< void()> sigAllBytesWritten()
virtual int64_t bytesAvailable() const
virtual ByteArray readLine(const int64_t maxSize=0)
virtual int64_t readData(uint channel, char *buffer, int64_t bufsize)=0
bool waitForReadyRead(int timeout)
std::shared_ptr< Base > Ptr