1#ifndef ASYNCDATASOURCE_H
2#define ASYNCDATASOURCE_H
4#include <zypp-core/zyppng/base/Base>
5#include <zypp-core/zyppng/io/IODevice>
23 using Ptr = std::shared_ptr<AsyncDataSource>;
24 using WeakPtr = std::weak_ptr<AsyncDataSource>;
33 bool openFds (
const std::vector<int>& readFds,
int writeFd = -1 );
39 void close ()
override;
93 int64_t
writeData(
const char *data, int64_t count)
override;
98 int64_t
readData( uint channel,
char *buffer, int64_t bufsize )
override;
int64_t writeData(const char *data, int64_t count) override
SignalProxy< void(uint, AsyncDataSource::ChannelCloseReason)> sigReadFdClosed()
int64_t bytesPending() const override
void readChannelChanged(uint channel) override
bool waitForReadyRead(uint channel, int timeout) override
std::weak_ptr< AsyncDataSource > WeakPtr
bool openFds(const std::vector< int > &readFds, int writeFd=-1)
virtual void closeWriteChannel()
int64_t readData(uint channel, char *buffer, int64_t bufsize) override
std::shared_ptr< AsyncDataSource > Ptr
SignalProxy< void(AsyncDataSource::ChannelCloseReason)> sigWriteFdClosed()
int64_t rawBytesAvailable(uint channel) const override
bool waitForReadyRead(int timeout)
virtual bool open(const OpenMode mode)
#define ZYPP_DECLARE_PRIVATE(Class)