# TK_Comment

## Functions

| `TK_Comment`
| `~TK_Comment`
`TK_Status` | `Read`
`TK_Status` | `Write`
`TK_Status` | `Execute`
`TK_Status` | `ReadAscii`
`TK_Status` | `WriteAscii`
`TK_Status` | `ExecuteAscii`
`TK_Status` | `Interpret`
`TK_Status` | `Interpret`
void | `Reset`
void | `SetComment`
void | `SetComment`
char const * | `GetComment`
char * | `GetComment`

## Detailed Description

class TK_Comment : public BBaseOpcodeHandler

  Handles the TKE_Comment opcode.

  TK_Comment provides support for writing/reading the TK_Comment opcode object to/from an HSF file. Take care when overloading this one, since the first comment in the file contains important information about the file (such file version and the flags that were used at the time of file write).

  The TKE_Comment opcode object contains a comment for the file.

  Public Functions

  TK_Comment(char const *comment = 0)

    constructor

  ~TK_Comment()
  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 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.

  TK_Status ReadAscii(BStreamFileToolkit &tk)

    Deprecated.

  TK_Status WriteAscii(BStreamFileToolkit &tk)

    Deprecated.

  TK_Status ExecuteAscii(BStreamFileToolkit &tk)
  inline virtual TK_Status Interpret(BStreamFileToolkit &tk, long key, int variant)

    The only real reason we need an Interpret function here is so that we can register this class as a PreWalk or PostWalk handler

  inline virtual TK_Status Interpret(BStreamFileToolkit &tk, long key, char const *special)

    Extracts graphics data (typically from the application’s scene-graph) and maps it to the opcode handler’s data members in preparation for writing out an object to the file.

    Parameters

      - tk – A reference to the BStreamFileToolkit object.

      - key – An identifier to the object (for example, the HOOPS key of a geometry item)

      - special – A string value of particular data

    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.

  inline void SetComment(char const *comment)

    Set the comment string. Makes sure the buffer is big enough to hold the string, and copies it in

  inline void SetComment(int length)

    Set the comment. Makes sure the buffer is big enough to hold a string of ‘length’ characters

  inline char const *GetComment() const

    Get the comment string. Returns a pointer to the current comment

  inline char *GetComment()

    Get the comment string buffer. Returns a pointer to the current comment buffer, which may then be modified directly