Class IOutputStream#

Inheritance Relationships#

Derived Type#

Class Documentation#

class IOutputStream#

Interface used for writing a data-stream. The abstraction used is:

  • It is possible to write to arbitrary positions.

  • The end of the stream is defined by the highest position written to.

  • If write-operations occur on non-consecutive positions, then the gaps can be assumed to have arbitrary content.

Subclassed by libCZI::IInputOutputStream

Public Functions

virtual void Write(std::uint64_t offset, const void *pv, std::uint64_t size, std::uint64_t *ptrBytesWritten) = 0#

Writes the specified data to the stream, starting at the position specified by “offset”.

Parameters:
  • offset – The offset into the stream where to start the write-operation.

  • pv – Pointer to the data.

  • size – The size of the data.

  • ptrBytesWritten[inout] If non-null, then the number of bytes actually written will be put here.

virtual ~IOutputStream() = default#