eckit::distributed::TransportHandle class

Base classes

class eckit::DataHandle

Public static functions

static auto classSpec() -> const ClassSpec&

Constructors, destructors, conversion operators

TransportHandle(Transport& transport, const std::string& path, size_t writers, bool exclusive)
Contructor.
~TransportHandle() override
Destructor.

Public functions

auto openForRead() -> eckit::Length override
void openForWrite(const eckit::Length&) override
void openForAppend(const eckit::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
auto estimate() -> eckit::Length override
auto position() -> eckit::Offset override
auto size() -> Length virtual
auto seek(const Offset&) -> Offset virtual
auto canSeek() const -> bool virtual
void skip(const Length&) virtual
void restartReadFrom(const Offset&) virtual
void restartWriteFrom(const Offset&) virtual
auto clone() const -> DataHandle* 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 compress(bool = false) -> bool virtual
auto merge(DataHandle*) -> bool virtual
auto isEmpty() const -> bool virtual
auto moveable() const -> bool virtual
void toLocal(Stream& s) const virtual
auto toLocal() -> DataHandle* virtual
void toRemote(Stream& s) const virtual
void selectMover(MoverTransferSelection&, bool read) const virtual
auto metricsTag() const -> std::string virtual
void collectMetrics(const std::string& what) const virtual
void hash(MD5& md5) const virtual
auto doubleBufferOK() const -> bool virtual
void encode(Stream&) const override
auto reanimator() const -> const ReanimatorBase& override
auto className() const -> std::string virtual

Private functions

auto title() const -> std::string override

Function documentation

static const ClassSpec& eckit::distributed::TransportHandle::classSpec()

Length eckit::distributed::TransportHandle::size() virtual

Offset eckit::distributed::TransportHandle::seek(const Offset&) virtual

bool eckit::distributed::TransportHandle::canSeek() const virtual

void eckit::distributed::TransportHandle::skip(const Length&) virtual

void eckit::distributed::TransportHandle::restartReadFrom(const Offset&) virtual

void eckit::distributed::TransportHandle::restartWriteFrom(const Offset&) virtual

DataHandle* eckit::distributed::TransportHandle::clone() const virtual

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

Save into an other datahandle.

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

Save into a file.

Length eckit::distributed::TransportHandle::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::distributed::TransportHandle::name() const virtual

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

Create a FILE* from this handle.

FILE* eckit::distributed::TransportHandle::openf(bool delete_on_close = false)

bool eckit::distributed::TransportHandle::compare(DataHandle&)

Compare bytes.

bool eckit::distributed::TransportHandle::compress(bool = false) virtual

bool eckit::distributed::TransportHandle::merge(DataHandle*) virtual

bool eckit::distributed::TransportHandle::isEmpty() const virtual

bool eckit::distributed::TransportHandle::moveable() const virtual

void eckit::distributed::TransportHandle::toLocal(Stream& s) const virtual

DataHandle* eckit::distributed::TransportHandle::toLocal() virtual

void eckit::distributed::TransportHandle::toRemote(Stream& s) const virtual

void eckit::distributed::TransportHandle::selectMover(MoverTransferSelection&, bool read) const virtual

std::string eckit::distributed::TransportHandle::metricsTag() const virtual

void eckit::distributed::TransportHandle::collectMetrics(const std::string& what) const virtual

void eckit::distributed::TransportHandle::hash(MD5& md5) const virtual

bool eckit::distributed::TransportHandle::doubleBufferOK() const virtual

void eckit::distributed::TransportHandle::encode(Stream&) const override

const ReanimatorBase& eckit::distributed::TransportHandle::reanimator() const override

std::string eckit::distributed::TransportHandle::className() const virtual