eckit::MultiHandle class

Base classes

class DataHandle

Public types

using HandleList = std::vector<DataHandle*>

Public static functions

static auto classSpec() -> const ClassSpec&

Constructors, destructors, conversion operators

MultiHandle()
MultiHandle(const LengthList&)
MultiHandle(const HandleList&)
MultiHandle(const HandleList&, const LengthList&)
MultiHandle(Stream&)
~MultiHandle() override

Public functions

void operator+=(DataHandle*) virtual
void operator+=(const Length&) virtual
auto openForRead() -> Length override
void openForWrite(const Length&) override
void openForAppend(const Length&) override
auto read(void*, long) -> long override
auto write(const void*, long) -> long override
void close() override
void flush() override
void rewind() override
void print(std::ostream&) const override
void restartReadFrom(const Offset& from) override
auto position() -> Offset override
auto seek(const Offset&) -> Offset override
auto canSeek() const -> bool override
auto merge(DataHandle*) -> bool override
auto compress(bool = false) -> bool override
auto size() -> Length override
auto estimate() -> Length override
void toRemote(Stream&) const override
void toLocal(Stream&) const override
auto toLocal() -> DataHandle* override
void selectMover(MoverTransferSelection&, bool read) const override
auto title() const -> std::string override
auto moveable() const -> bool override
auto clone() const -> DataHandle* override
void collectMetrics(const std::string& what) const override
void encode(Stream&) const override
auto reanimator() const -> const ReanimatorBase& override
void skip(const Length&) virtual
void restartWriteFrom(const Offset&) virtual
auto saveInto(DataHandle&, TransferWatcher& = TransferWatcher::dummy()) -> Length virtual
Save into an other datahandle.
auto saveInto(const PathName&, TransferWatcher& = TransferWatcher::dummy()) -> Length virtual
Save into a file.
auto copyTo(DataHandle&, long bufsize = -1, Length maxsize = -1, TransferWatcher& = TransferWatcher::dummy()) -> Length virtual
auto name() const -> std::string virtual
auto openf(const char* mode, bool delete_on_close = false) -> FILE*
Create a FILE* from this handle.
auto openf(bool delete_on_close = false) -> FILE*
auto compare(DataHandle&) -> bool
Compare bytes.
auto isEmpty() const -> bool virtual
auto metricsTag() const -> std::string virtual
void hash(MD5& md5) const virtual
auto doubleBufferOK() const -> bool virtual
auto className() const -> std::string virtual

Function documentation

void eckit::MultiHandle::skip(const Length&) virtual

void eckit::MultiHandle::restartWriteFrom(const Offset&) virtual

Length eckit::MultiHandle::saveInto(DataHandle&, TransferWatcher& = TransferWatcher::dummy()) virtual

Save into an other datahandle.

Length eckit::MultiHandle::saveInto(const PathName&, TransferWatcher& = TransferWatcher::dummy()) virtual

Save into a file.

Length eckit::MultiHandle::copyTo(DataHandle&, long bufsize = -1, Length maxsize = -1, TransferWatcher& = TransferWatcher::dummy()) virtual

Quiet version of saveInto Does not support progess, restart and double buffering

std::string eckit::MultiHandle::name() const virtual

FILE* eckit::MultiHandle::openf(const char* mode, bool delete_on_close = false)

Create a FILE* from this handle.

FILE* eckit::MultiHandle::openf(bool delete_on_close = false)

bool eckit::MultiHandle::compare(DataHandle&)

Compare bytes.

bool eckit::MultiHandle::isEmpty() const virtual

std::string eckit::MultiHandle::metricsTag() const virtual

void eckit::MultiHandle::hash(MD5& md5) const virtual

bool eckit::MultiHandle::doubleBufferOK() const virtual

std::string eckit::MultiHandle::className() const virtual

This website is beyond its original expiry date and the content may be out of date. The site owner has been notified and may choose to extend the expiry date and remove this banner. If you have any questions about this, please visit our support portal.