Bond 0.9
C++ Bond Runtime Library API Documentation
Loading...
Searching...
No Matches
Bond::MemoryStreamFactory Class Reference

A concrete implementation of StreamFactory that instantiates MemoryInputStreams for a fixed collection of DataViews. More...

#include <bond/io/memorystreamfactory.h>

Inheritance diagram for Bond::MemoryStreamFactory:
Bond::StreamFactory

Public Member Functions

 MemoryStreamFactory (Allocator &allocator, const DataViewIndex &index, StreamFactory *delegateFactory=nullptr, bool throwOnFailure=true)
 Constructs a MemoryStreamFactory object.
virtual ~MemoryStreamFactory ()
virtual InputStreamHandle CreateInputStream (const char *fileName) override
 Returns an owning pointer to a dynamically allocated InputStream.
virtual OutputStreamHandle CreateOutputStream (const char *fileName, bool append) override
 Returns an owning pointer to a dynamically allocated OutputStream.
void SetDelegateFactory (StreamFactory *delegateFactory)
 Sets the fallback StreamFactory used when this factory cannot provide a stream.
Public Member Functions inherited from Bond::StreamFactory
virtual ~StreamFactory ()

Detailed Description

A concrete implementation of StreamFactory that instantiates MemoryInputStreams for a fixed collection of DataViews.

Constructor & Destructor Documentation

◆ MemoryStreamFactory()

Bond::MemoryStreamFactory::MemoryStreamFactory ( Allocator & allocator,
const DataViewIndex & index,
StreamFactory * delegateFactory = nullptr,
bool throwOnFailure = true )
inline

Constructs a MemoryStreamFactory object.

Parameters
allocatorThe memory allocator from which MemoryInputStreams are allocated.
indexThe index of DataViews from which MemoryInputStreams are instantiated.
delegateFactoryIf this factory cannot provide an InputStream, this factory is used as a fallback.
throwOnFailureIf true, stream creation failures are reported by throwing an Exception. Otherwise, stream creation failures return a null handle.

◆ ~MemoryStreamFactory()

virtual Bond::MemoryStreamFactory::~MemoryStreamFactory ( )
inlinevirtual

Member Function Documentation

◆ CreateInputStream()

virtual InputStreamHandle Bond::MemoryStreamFactory::CreateInputStream ( const char * fileName)
overridevirtual

Returns an owning pointer to a dynamically allocated InputStream.

Parameters
fileNameThe name of the file for which an input stream is created.

Implements Bond::StreamFactory.

◆ CreateOutputStream()

virtual OutputStreamHandle Bond::MemoryStreamFactory::CreateOutputStream ( const char * fileName,
bool append )
overridevirtual

Returns an owning pointer to a dynamically allocated OutputStream.

Parameters
fileNameThe name of the file for which an output stream is created.
appendWhether bytes are written to the end of an existing file.

Implements Bond::StreamFactory.

◆ SetDelegateFactory()

void Bond::MemoryStreamFactory::SetDelegateFactory ( StreamFactory * delegateFactory)
inline

Sets the fallback StreamFactory used when this factory cannot provide a stream.

Parameters
delegateFactoryThe fallback StreamFactory.

The documentation for this class was generated from the following file:
  • include/bond/io/memorystreamfactory.h