Xerces-C++: Base64 Class Reference

- Main Page
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# Base64 Class Reference

List of all members.

## Public Types
enum | Conformance { Conf_RFC2045, Conf_Schema }
## Static Public Member Functions
static XMLCh * | getCanonicalRepresentation (const XMLCh *const inputData, MemoryManager *const memMgr=0, Conformance conform=Conf_RFC2045)
| get canonical representation
static XMLByte * | encode (const XMLByte *const inputData, const XMLSize_t inputLength, XMLSize_t *outputLength, MemoryManager *const memMgr=0)
| Encodes octets into Base64 data.
static XMLByte * | decode (const XMLByte *const inputData, XMLSize_t *decodedLength, MemoryManager *const memMgr=0, Conformance conform=Conf_RFC2045)
| Decodes Base64 data into octets.
static XMLByte * | decodeToXMLByte (const XMLCh *const inputData, XMLSize_t *decodedLength, MemoryManager *const memMgr=0, Conformance conform=Conf_RFC2045)
| Decodes Base64 data into octets.
static int | getDataLength (const XMLCh *const inputData, MemoryManager *const memMgr=0, Conformance conform=Conf_RFC2045)
| Get data length.

## Member Enumeration Documentation

enum Base64::Conformance

Enumerator:

  Conf_RFC2045 |
  Conf_Schema |

## Member Function Documentation

static XMLByte* Base64::encode | ( | const XMLByte *const | inputData,
|  | const XMLSize_t | inputLength,
|  | XMLSize_t * | outputLength,
|  | MemoryManager *const | memMgr = `0` |
| ) |  |  | `[static]`

Encodes octets into Base64 data.

NOTE: The returned buffer is dynamically allocated and is the responsibility of the caller to delete it when not longer needed. You can call XMLString::release to release this returned buffer.

If a memory manager is provided, ask the memory manager to de-allocate the returned buffer.

Parameters:

  | inputData | Binary data in XMLByte stream.
  | inputLength | Length of the XMLByte stream.
  | outputLength | Length of the encoded Base64 byte stream.
  | memMgr | client provided memory manager

Returns:
  Encoded Base64 data in XMLByte stream, or NULL if input data can not be encoded.

See also:
  XMLString::release(XMLByte**)

static XMLByte* Base64::decode | ( | const XMLByte *const | inputData,
|  | XMLSize_t * | decodedLength,
|  | MemoryManager *const | memMgr = `0`,
|  | Conformance | conform = `Conf_RFC2045` |
| ) |  |  | `[static]`

Decodes Base64 data into octets.

NOTE: The returned buffer is dynamically allocated and is the responsibility of the caller to delete it when not longer needed. You can call XMLString::release to release this returned buffer.

If a memory manager is provided, ask the memory manager to de-allocate the returned buffer.

Parameters:

  | inputData | Base64 data in XMLByte stream.
  | decodedLength | Length of decoded XMLByte stream.
  | memMgr | client provided memory manager
  | conform | conformance specified: if the input data conforms to the RFC 2045 it is allowed to have any number of whitespace characters inside; if it conforms to the XMLSchema specs, it is allowed to have at most one whitespace character between the quartets

Returns:
  Decoded binary data in XMLByte stream, or NULL if input data can not be decoded.

See also:
  XMLString::release(XMLByte**)

static XMLByte* Base64::decodeToXMLByte | ( | const XMLCh *const | inputData,
|  | XMLSize_t * | decodedLength,
|  | MemoryManager *const | memMgr = `0`,
|  | Conformance | conform = `Conf_RFC2045` |
| ) |  |  | `[static]`

Decodes Base64 data into octets.

NOTE: The returned buffer is dynamically allocated and is the responsibility of the caller to delete it when not longer needed. You can call XMLString::release to release this returned buffer.

If a memory manager is provided, ask the memory manager to de-allocate the returned buffer.

Parameters:

  | inputData | Base64 data in XMLCh stream.
  | decodedLength | Length of decoded XMLByte stream.
  | memMgr | client provided memory manager
  | conform | conformance specified: if the input data conforms to the RFC 2045 it is allowed to have any number of whitespace characters inside; if it conforms to the XMLSchema specs, it is allowed to have at most one whitespace character between the quartets

Returns:
  Decoded binary data in XMLByte stream, or NULL if input data can not be decoded.

See also:
  XMLString::release(XMLByte**)

static int Base64::getDataLength | ( | const XMLCh *const | inputData,
|  | MemoryManager *const | memMgr = `0`,
|  | Conformance | conform = `Conf_RFC2045` |
| ) |  |  | `[static]`

Get data length.

Returns length of decoded data given an array containing encoded data.

Parameters:

  | inputData | Base64 data in XMLCh stream.
  | memMgr | client provided memory manager
  | conform | conformance specified

Returns:
  Length of decoded data, or -1 if input data can not be decoded.

static XMLCh* Base64::getCanonicalRepresentation | ( | const XMLCh *const | inputData,
|  | MemoryManager *const | memMgr = `0`,
|  | Conformance | conform = `Conf_RFC2045` |
| ) |  |  | `[static]`

get canonical representation

Caller is responsible for the proper deallcation of the string returned.

Parameters:

  | inputData | A string containing the Base64
  | memMgr | client provided memory manager
  | conform | conformance specified

return: the canonical representation of the Base64 if it is a valid Base64 0 otherwise

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

- Base64.hpp