Loading...
Searching...
No Matches
pdftron::Filters::FilterWriter Class Reference

#include <FilterWriter.h>

Public Member Functions

 FilterWriter ()
 FilterWriter (Filter &filter)
 ~FilterWriter ()
void WriteUChar (UChar ch)
void WriteInt (Int16 num)
void WriteInt (UInt16 num)
void WriteInt (Int32 num)
void WriteInt (UInt32 num)
void WriteInt (Int64 num)
void WriteInt (UInt64 num)
void WriteString (const std::string &str)
void WriteString (const char *str)
void WriteFilter (FilterReader &reader)
void WriteLine (const char *line, char eol=0x0D)
size_t WriteBuffer (std::vector< unsigned char > buf)
size_t WriteBuffer (const char *buf, size_t buf_size)
void AttachFilter (Filter &filter)
Filter GetAttachedFilter ()
void Seek (ptrdiff_t offset, Filter::ReferencePos origin)
ptrdiff_t Tell ()
size_t Count ()
void Flush ()
void FlushAll ()

Detailed Description

FilterWriter is a utility class providing a convenient way to write data to an output filter (using Filter directly is not very intuitive).

For example:

StdFile outfile("file.dat", StdFile::e_write_mode);
FilterWriter fwriter(outfile);
fwriter.WriteBuffer(buf, buf_sz);
fwriter.Flush();

Definition at line 29 of file FilterWriter.h.

Constructor & Destructor Documentation

◆ FilterWriter() [1/2]

pdftron::Filters::FilterWriter::FilterWriter ( )

◆ FilterWriter() [2/2]

pdftron::Filters::FilterWriter::FilterWriter ( Filter & filter)

◆ ~FilterWriter()

pdftron::Filters::FilterWriter::~FilterWriter ( )

Member Function Documentation

◆ AttachFilter()

void pdftron::Filters::FilterWriter::AttachFilter ( Filter & filter)

Attaches a filter to the this FilterWriter.

Parameters
filterfilter object to attach

◆ Count()

size_t pdftron::Filters::FilterWriter::Count ( )
Returns
- the number of bytes consumed since opening the filter or since the last Seek operation.

◆ Flush()

void pdftron::Filters::FilterWriter::Flush ( )

Forces any data remaining in the buffer to be written to input or output filter.

◆ FlushAll()

void pdftron::Filters::FilterWriter::FlushAll ( )

Forces any data remaining in the filter chain to the source or destination.

◆ GetAttachedFilter()

Filter pdftron::Filters::FilterWriter::GetAttachedFilter ( )
Returns
- The attached Filter or a NULL filter if no filter is attached.

◆ Seek()

void pdftron::Filters::FilterWriter::Seek ( ptrdiff_t offset,
Filter::ReferencePos origin )

Sets the position within the current stream.

Parameters
offset- A byte offset relative to origin. If offset is negative, the new position will precede the position specified by origin by the number of bytes specified by offset. If offset is zero, the new position will be the position specified by origin. If offset is positive, the new position will follow the position specified by origin by the number of bytes specified by offset.
origin- A value of type ReferencePos indicating the reference point used to obtain the new position
Note
- After each Seek() operation the number of consumed bytes (i.e. Count()) is set to 0.
Exceptions
-throws an exception if the method is not implemented in the associated filter.

◆ Tell()

ptrdiff_t pdftron::Filters::FilterWriter::Tell ( )

Reports the current read position in the stream relative to the stream origin.

Returns
- The current position in the stream
Exceptions
-throws an exception if the method is not implemented in the associated filter.

◆ WriteBuffer() [1/2]

size_t pdftron::Filters::FilterWriter::WriteBuffer ( const char * buf,
size_t buf_size )

◆ WriteBuffer() [2/2]

size_t pdftron::Filters::FilterWriter::WriteBuffer ( std::vector< unsigned char > buf)
Parameters
bufbuffer object to write out.
Returns
- returns the number of bytes actually written to a stream. This number may less than buf_size if the stream is corrupted.

◆ WriteFilter()

void pdftron::Filters::FilterWriter::WriteFilter ( FilterReader & reader)

Write the entire input stream to the output stream (i.e. to this FilterWriter).

Parameters
readerA FilterReader attached to an input stream.

◆ WriteInt() [1/6]

void pdftron::Filters::FilterWriter::WriteInt ( Int16 num)

Write an integer to the output stream.

Parameters
numAn integer to write to the output stream.

◆ WriteInt() [2/6]

void pdftron::Filters::FilterWriter::WriteInt ( Int32 num)

◆ WriteInt() [3/6]

void pdftron::Filters::FilterWriter::WriteInt ( Int64 num)

◆ WriteInt() [4/6]

void pdftron::Filters::FilterWriter::WriteInt ( UInt16 num)

◆ WriteInt() [5/6]

void pdftron::Filters::FilterWriter::WriteInt ( UInt32 num)

◆ WriteInt() [6/6]

void pdftron::Filters::FilterWriter::WriteInt ( UInt64 num)

◆ WriteLine()

void pdftron::Filters::FilterWriter::WriteLine ( const char * line,
char eol = 0x0D )

Write out a null terminated 'line' followed by a end of line character default end of line character is carriage return.

Parameters
linestring to write out.
eolend of line character. Defaults to carriage return (0x0D).

◆ WriteString() [1/2]

void pdftron::Filters::FilterWriter::WriteString ( const char * str)

Write a null terminated string

Parameters
strA terminated string string to write to the output stream.

◆ WriteString() [2/2]

void pdftron::Filters::FilterWriter::WriteString ( const std::string & str)

Write a string to the output stream.

Parameters
strA string to write to the output stream.

◆ WriteUChar()

void pdftron::Filters::FilterWriter::WriteUChar ( UChar ch)

Write a single character to the output stream.

Parameters
chAn unsigned character to write to the output stream.

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