virthttp  0.0
libvirt http interface
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
virt::Stream Class Reference

#include <Stream.hpp>

Classes

class  Flag
 
class  RecvFlag
 

Public Types

template<class T >
using SinkFunc = int(*)(Stream st, const char *data, size_t nbytes, T *opaque)
 
template<class T >
using SinkHoleFunc = bool(*)(Stream st, long long length, T *opaque)
 
template<class T >
using SourceFunc = int(*)(Stream st, char *data, size_t nbytes, T *opaque)
 
template<class T >
using SourceHoleFunc = bool(*)(Stream st, int *inData, long long *length, T *opaque)
 
template<class T >
using SourceSkipFunc = bool(*)(Stream st, long long length, T *opaque)
 

Public Member Functions

 Stream (const Connection &, Flag) noexcept
 
 Stream (const Stream &) noexcept
 
constexpr Stream (Stream &&) noexcept
 
 ~Stream () noexcept
 
Streamoperator= (const Stream &) noexcept
 
constexpr Streamoperator= (Stream &&) noexcept
 
bool abort () noexcept
 
bool finish () noexcept
 
int recv (gsl::span< char >) noexcept
 
int recv (char *buf, size_t buflen) noexcept
 
int recv (gsl::span< char >, RecvFlag) noexcept
 
int recv (char *buf, size_t buflen, RecvFlag) noexcept
 
std::optional< long long > recvHole ()
 
int send (gsl::span< const char >) noexcept
 
int send (const char *buf, size_t buflen) noexcept
 
bool sendHole (long long) noexcept
 

Public Attributes

friend Connection
 
friend Domain
 
friend StorageVol
 

Member Typedef Documentation

template<class T >
using virt::Stream::SinkFunc = int (*)(Stream st, const char* data, size_t nbytes, T* opaque)
template<class T >
using virt::Stream::SinkHoleFunc = bool (*)(Stream st, long long length, T* opaque)
template<class T >
using virt::Stream::SourceFunc = int (*)(Stream st, char* data, size_t nbytes, T* opaque)
template<class T >
using virt::Stream::SourceHoleFunc = bool (*)(Stream st, int* inData, long long* length, T* opaque)
template<class T >
using virt::Stream::SourceSkipFunc = bool (*)(Stream st, long long length, T* opaque)

Constructor & Destructor Documentation

virt::Stream::Stream ( const Connection conn,
Flag  flags 
)
inlinenoexcept
virt::Stream::Stream ( const Stream oth)
inlinenoexcept
constexpr virt::Stream::Stream ( Stream &&  from)
noexcept
virt::Stream::~Stream ( )
inlinenoexcept

Member Function Documentation

bool virt::Stream::abort ( )
inlinenoexcept
bool virt::Stream::finish ( )
inlinenoexcept
Stream & virt::Stream::operator= ( const Stream oth)
inlinenoexcept
constexpr Stream & virt::Stream::operator= ( Stream &&  from)
noexcept
int virt::Stream::recv ( gsl::span< char >  span)
inlinenoexcept
int virt::Stream::recv ( char *  buf,
size_t  buflen 
)
inlinenoexcept
int virt::Stream::recv ( gsl::span< char >  span,
RecvFlag  flags 
)
inlinenoexcept
int virt::Stream::recv ( char *  buf,
size_t  buflen,
RecvFlag  flags 
)
inlinenoexcept
std::optional< long long > virt::Stream::recvHole ( )
inline
int virt::Stream::send ( gsl::span< const char >  span)
inlinenoexcept
int virt::Stream::send ( const char *  buf,
size_t  buflen 
)
inlinenoexcept
bool virt::Stream::sendHole ( long long  len)
inlinenoexcept

Member Data Documentation

friend virt::Stream::Connection
friend virt::Stream::Domain
friend virt::Stream::StorageVol

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