All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FS_ReaderStream Class Reference

#include <FS_ReaderStream.h>

Public Member Functions

 FS_ReaderStream ()
 FS_ReaderStream (FS_ReaderStream &src, int64 stream_offset, int64 stream_size, int64 data_size, const FS_IStreamFilterFactory *factory)
 FS_ReaderStream (const UT_StringHolder &file, const UT_Options *options=nullptr)
 FS_ReaderStream (const char *data, int len, time_t modtime, const UT_StringHolder &file=UT_StringHolder())
 FS_ReaderStream (UT_WorkBuffer &buffer, time_t modtime, const UT_StringHolder &file=UT_StringHolder())
virtual ~FS_ReaderStream ()
virtual int64 getMemoryUsage (bool inclusive) const
 Get the amount of memory owned by this FS_ReaderStream. More...
UT_IStreamgetStream () const
 Returns the actual input stream to read the data from. More...
bool isGood () const
const UT_StringHoldergetFilename () const
int64 getLength () const
void setSubStreamReadFilterFactory (FS_IStreamFilterFactory *f)
FS_IStreamFilterFactorygetSubStreamReadFilterFactory () const
void setSubStreamWriteFilterFactory (FS_WriteFilterFactory *f)
FS_WriteFilterFactorygetSubStreamWriteFilterFactory () const
void setModTime (time_t modtime)
time_t getModTime () const

Protected Attributes

UT_UniquePtr< UT_IStreammyStream
UT_StringHolder myFile
int64 myDataSize
time_t myModTime
UT_WorkBuffer myMemBuffer

Detailed Description

FS/FS_HomeHelper.C, and FS/FS_HomeHelper.h.

Definition at line 35 of file FS_ReaderStream.h.

Constructor & Destructor Documentation

FS_ReaderStream::FS_ReaderStream ( )
FS_ReaderStream::FS_ReaderStream ( FS_ReaderStream src,
int64  stream_offset,
int64  stream_size,
int64  data_size,
const FS_IStreamFilterFactory factory 
FS_ReaderStream::FS_ReaderStream ( const UT_StringHolder file,
const UT_Options options = nullptr 
FS_ReaderStream::FS_ReaderStream ( const char *  data,
int  len,
time_t  modtime,
const UT_StringHolder file = UT_StringHolder() 

Creates a memory buffer reader stream. Note, the reader stream object keeps a shallow reference to the data, thus the buffer needs to stay valid for the duration of the reader life span. Otherwise, use the constructor that takes UT_WorkBuffer.

FS_ReaderStream::FS_ReaderStream ( UT_WorkBuffer buffer,
time_t  modtime,
const UT_StringHolder file = UT_StringHolder() 
virtual FS_ReaderStream::~FS_ReaderStream ( )

Member Function Documentation

const UT_StringHolder& FS_ReaderStream::getFilename ( ) const

Definition at line 84 of file FS_ReaderStream.h.

int64 FS_ReaderStream::getLength ( ) const

Returns the size of the data (ie, after filtering the raw stream). If no filtering is performed, this is the same as raw stream size.

Definition at line 88 of file FS_ReaderStream.h.

virtual int64 FS_ReaderStream::getMemoryUsage ( bool  inclusive) const

Get the amount of memory owned by this FS_ReaderStream.

time_t FS_ReaderStream::getModTime ( ) const

Accessor for modification time on the stream.

Definition at line 93 of file FS_ReaderStream.h.

UT_IStream* FS_ReaderStream::getStream ( ) const

Returns the actual input stream to read the data from.

Definition at line 81 of file FS_ReaderStream.h.

FS_IStreamFilterFactory* FS_ReaderStream::getSubStreamReadFilterFactory ( ) const
FS_WriteFilterFactory* FS_ReaderStream::getSubStreamWriteFilterFactory ( ) const
bool FS_ReaderStream::isGood ( ) const
void FS_ReaderStream::setModTime ( time_t  modtime)

Accessor for modification time on the stream.

Definition at line 92 of file FS_ReaderStream.h.

void FS_ReaderStream::setSubStreamReadFilterFactory ( FS_IStreamFilterFactory f)

Sets the factory that should be used for this stream's substreams (but not for the whole stream). It is a way to piggyback the filter info to potential substream readers.

void FS_ReaderStream::setSubStreamWriteFilterFactory ( FS_WriteFilterFactory f)

Member Data Documentation

int64 FS_ReaderStream::myDataSize

Definition at line 119 of file FS_ReaderStream.h.

UT_StringHolder FS_ReaderStream::myFile

Definition at line 118 of file FS_ReaderStream.h.

UT_WorkBuffer FS_ReaderStream::myMemBuffer

Definition at line 121 of file FS_ReaderStream.h.

time_t FS_ReaderStream::myModTime

Definition at line 120 of file FS_ReaderStream.h.

UT_UniquePtr<UT_IStream> FS_ReaderStream::myStream

Definition at line 117 of file FS_ReaderStream.h.

FS_IStreamFilterFactory* FS_ReaderStream::mySubStreamReadFilterFactory

Definition at line 114 of file FS_ReaderStream.h.

FS_WriteFilterFactory* FS_ReaderStream::mySubStreamWriteFilterFactory

Definition at line 115 of file FS_ReaderStream.h.

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