Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.6

Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

XalanOutputStream Class Reference

#include <XalanOutputStream.hpp>

Inheritance diagram for XalanOutputStream

Collaboration diagram for XalanOutputStream:

List of all members.

Public Types

Public Methods

Static Public Methods

Protected Methods

Static Protected Attributes


Member Typedef Documentation

typedef std::vector<XalanDOMChar> XalanOutputStream::BufferType

typedef std::vector<char> XalanOutputStream::TranscodeVectorType

typedef BufferType::size_type XalanOutputStream::size_type


Member Enumeration Documentation

anonymous enum

Enumeration values:
eDefaultBufferSize  
eDefaultTranscoderBlockSize  

Constructor & Destructor Documentation

XalanOutputStream::XalanOutputStream ( BufferType::size_type theBufferSize = eDefaultBufferSize,
TranscodeVectorType::size_type theTranscoderBlockSize = eDefaultTranscoderBlockSize,
bool fThrowTranscodeException = true ) [explicit]

Constructor.

Parameters:
theBufferSize   the size of the transcoding buffer
theTranscoderBlockSize   the size of the block used by the transcoder
fThrowTranscodeException   If true, an error transcoding will result in an exception being thrown.

virtual XalanOutputStream::~XalanOutputStream ( ) [virtual]


Member Function Documentation

bool XalanOutputStream::canTranscodeTo ( unsigned int theChar ) const

Determine if a given value can be represented in the output encoding.

Returns:
true if the value can be represented, and false if not.

const XalanDOMChar * XalanOutputStream::defaultNewlineString ( ) [static]

void XalanOutputStream::doFlush ( ) [protected, pure virtual]

Flush the stream.

Reimplemented in XalanFStreamOutputStream, XalanFileOutputStream, XalanNullOutputStream, XalanStdOutputStream, and XalanTransformerOutputStream.

void XalanOutputStream::flush ( ) []

Flush the stream's buffer.

const XalanDOMChar * XalanOutputStream::getNewlineString ( ) const [virtual]

Get the string which is appropriate for inserting a line feed in the stream.

const XalanDOMString & XalanOutputStream::getOutputEncoding ( ) const []

Get the output encoding for the stream.

Returns:
The encoding name

bool XalanOutputStream::getThrowTranscodeException ( ) const []

Set the flag that indicates whether a transcoding error should throw an exception.

The default is to throw an exception. If this flag is false, and and an error occurs transcoding, then data will likely be lost.

Returns:
the value of the flag.

const XalanOutputTranscoder * XalanOutputStream::getTranscoder ( ) const []

void XalanOutputStream::newline ( ) [virtual]

Write the appropriate newline character(s) to the stream.

void XalanOutputStream::setBufferSize ( BufferType::size_type theBufferSize )

Set the size of the output buffer.

Parameters:
theBufferSize   The buffer size.

void XalanOutputStream::setOutputEncoding ( const XalanDOMString & theEncoding )

Set the output encoding for the stream.

Parameters:
theEncoding   The encoding name

void XalanOutputStream::setThrowTranscodeException ( bool flag ) []

Set the flag that indicates whether a transcoding error should throw an exception.

The default is to throw an exception. If this flag is false, and and an error occurs transcoding, then data will likely be lost.

Parameters:
the   new value of the flag.

void XalanOutputStream::transcode ( const XalanDOMChar * theBuffer,
size_type theBufferLength,
TranscodeVectorType & theDestination ) [protected]

Transcode a wide string.

Parameters:
theBuffer   The string to transcode.
theBufferLength   The length of the string.
theDestination   The destination vector.

void XalanOutputStream::write ( const XalanDOMChar * theBuffer,
size_type theBufferLength )

Write a specified number of characters to the output stream.

The string will be transcoded, if an output encoding is specified.

Parameters:
theBuffer   character buffer to write
theBufferLength   number of characters to write

void XalanOutputStream::write ( const char * theBuffer,
size_type theBufferLength ) []

Write a specified number of characters to the output stream.

The string will not be transcoded. The caller is responsible for making sure the buffer is flushed before calling this member function.

Parameters:
theBuffer   character buffer to write
theBufferLength   number of characters to write

void XalanOutputStream::write ( const XalanDOMChar * theBuffer ) []

Write a null-terminated wide string to the output file.

The string will be transcoded, if an output encoding is specified.

Parameters:
theBuffer   character buffer to write

void XalanOutputStream::write ( const char * theBuffer ) []

Write a null-terminated string to the output file.

The character will not be transcoded. The caller is responsible for making sure the buffer is flushed before calling this member function.

Parameters:
theBuffer   character buffer to write

void XalanOutputStream::write ( XalanDOMChar theChar ) []

Write a wide character to the output stream.

The character will be transcoded, if an output encoding is specified.

Parameters:
theChar   the character to write

void XalanOutputStream::write ( char theChar ) []

Write a character to the output stream.

The character will not be transcoded.

Parameters:
theChar   the character to write

void XalanOutputStream::writeData ( const char * theBuffer,
size_type theBufferLength ) [protected, pure virtual]

Write the data in the buffer.

Parameters:
theBuffer   The data to write
theBufferLength   The length of theBuffer.

Reimplemented in XalanFStreamOutputStream, XalanFileOutputStream, XalanNullOutputStream, XalanStdOutputStream, and XalanTransformerOutputStream.


Member Data Documentation

const XalanDOMChar XalanOutputStream::s_nlCRString[] [static, protected]

const XalanDOMString::size_type XalanOutputStream::s_nlCRStringLength [static, protected]

const XalanDOMChar XalanOutputStream::s_nlString[] [static, protected]

const XalanDOMString::size_type XalanOutputStream::s_nlStringLength [static, protected]


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

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

Xalan-C++ XSLT Processor Version 1.6
Copyright © 2000, 2001, 2002, 2003 The Apache Software Foundation. All Rights Reserved.