# ACEXML_CharStream Class Reference

`#include <ACEXML/common/CharStream.h>`

Inheritance diagram for ACEXML_CharStream:

[legend]
List of all members.

## Public Member Functions

virtual | ~ACEXML_CharStream ()=0
virtual int | available (void)=0
virtual int | close (void)=0
virtual int | get (ACEXML_Char &ch)=0
virtual int | read (ACEXML_Char *str, size_t len)=0
virtual int | peek (void)=0
virtual void | rewind (void)=0
virtual const ACEXML_Char * | getEncoding (void)=0
virtual const ACEXML_Char * | getSystemId (void)=0

## Detailed Description

ACEXML_CharStream is an abstract class (interface) which defines the basic opertions a parser could use to retrieve XML charater sequence. The sequence can be read from a file or a character buffer.

## Constructor & Destructor Documentation

ACEXML_CharStream::~ACEXML_CharStream | ( |  | ) | `[pure virtual]`

| Virtual destructor, must have.

## Member Function Documentation

virtual int ACEXML_CharStream::available | ( | void |  | ) | `[pure virtual]`

| Returns the available ACEXML_Char in the buffer. -1 if the object is not initialized properly. Implemented in ACEXML_FileCharStream, ACEXML_HttpCharStream, and ACEXML_StrCharStream.

virtual int ACEXML_CharStream::close | ( | void |  | ) | `[pure virtual]`

| Close this stream and release all resources used by it. Implemented in ACEXML_FileCharStream, ACEXML_HttpCharStream, and ACEXML_StrCharStream.

virtual int ACEXML_CharStream::get | ( | ACEXML_Char & | ch | ) | `[pure virtual]`

| Read the next ACEXML_Char. Return -1 if we are not able to return an ACEXML_Char, 0 if EOS is reached, or 1 if succeed. Implemented in ACEXML_FileCharStream, ACEXML_HttpCharStream, and ACEXML_StrCharStream.

virtual const ACEXML_Char* ACEXML_CharStream::getEncoding | ( | void |  | ) | `[pure virtual]`

| Implemented in ACEXML_FileCharStream, ACEXML_HttpCharStream, and ACEXML_StrCharStream.

virtual const ACEXML_Char* ACEXML_CharStream::getSystemId | ( | void |  | ) | `[pure virtual]`

| Implemented in ACEXML_FileCharStream, ACEXML_HttpCharStream, and ACEXML_StrCharStream.

virtual int ACEXML_CharStream::peek | ( | void |  | ) | `[pure virtual]`

| Peek the next ACEXML_Char in the CharStream. Return the character if succeess, -1 if EOS is reached. Implemented in ACEXML_FileCharStream, ACEXML_HttpCharStream, and ACEXML_StrCharStream.

virtual int ACEXML_CharStream::read | ( | ACEXML_Char * | str,
|  | size_t | len
| ) | `[pure virtual]`

| Read the next batch of ACEXML_Char strings Implemented in ACEXML_FileCharStream, ACEXML_HttpCharStream, and ACEXML_StrCharStream.

virtual void ACEXML_CharStream::rewind | ( | void |  | ) | `[pure virtual]`

| Resets the pointer to the beginning of the stream. Implemented in ACEXML_FileCharStream, ACEXML_HttpCharStream, and ACEXML_StrCharStream.

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

- CharStream.h
- CharStream.cpp