# TK_XML

## Functions

| `TK_XML`
| `~TK_XML`
`TK_Status` | `Read`
`TK_Status` | `Write`
`TK_Status` | `Clone`
`TK_Status` | `ReadAscii`
`TK_Status` | `WriteAscii`
`TK_Status` | `Execute`
void | `Reset`
void | `SetXML`
void | `AppendXML`
char const * | `GetXML`
char * | `GetXML`
int | `GetSize`

## Detailed Description

class TK_XML : public BBaseOpcodeHandler

  Handles the TKE_XML opcode.

  The HOOPS Stream File can contain XML code, which is denoted by TKE_XML. TK_XML will handle the TKE_XML opcode by simply reading the data, and not doing anything with it. Therefore, this class must be overloaded in order to both import (and handle), as well as export XML.

  Public Functions

  inline TK_XML()

    constructor

  ~TK_XML()
  virtual TK_Status Read(BStreamFileToolkit &tk)

    Reads data from the toolkit buffer, decodes/decompresses it, and maps it to the opcode handlers data members. User-defined classes which need to write out custom data should utilize one of the available GetData() methods.

    Parameters

      tk – A reference to the BStreamFileToolkit object.

    Returns

      The result of the function call.

  virtual TK_Status Write(BStreamFileToolkit &tk)

    Encodes/compresses data and writes data to the toolkit buffer. User-defined classes which need to write out custom data should utilize one of the available PutData() methods, and first write out the opcode associated with the group of binary data followed by the data itself.

    Parameters

      tk – A reference to the BStreamFileToolkit object.

    Returns

      The result of the function call.

  virtual TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const

    Copies the opcode handler

    Parameters

      - tk – A reference to the BStreamFileToolkit object.

      - handler – A pointer to the opcode handler object. Passed by reference.

    Returns

      The result of the function call.

  TK_Status ReadAscii(BStreamFileToolkit &tk)

    Deprecated.

  TK_Status WriteAscii(BStreamFileToolkit &tk)

    Deprecated.

  virtual TK_Status Execute(BStreamFileToolkit &tk)

    Processes the binary data that has been read for the current object, which involves passing the data to application-specific data structures.

    Parameters

      tk – A reference to the BStreamFileToolkit object.

    Returns

      The result of the function call.

  virtual void Reset()

    Resets the current opcode handler. This is called by the toolkit when it is done processing an opcode. This method reinitializes any opcode handler variables and frees up temporary data.

  void SetXML(int size, char const *data = 0)

    Sets the data buffer. Allocates a buffer which can hold ‘size’ bytes and if, specified, copies ‘bytes’ into the buffer

  void AppendXML(int size, char const *data = 0)

    Expands the buffer by ‘size’ bytes and, if specified, copies ‘bytes’ into the buffer

  inline char const *GetXML() const

    Returns the address of the data buffer

  inline char *GetXML()

    Returns the address of the data buffer, which may be modified directly

  inline int GetSize() const

    Returns the size of the data buffer