# HTK_Reference

## Functions

| `HTK_Reference`
`TK_Status` | `Write`
`TK_Status` | `Execute`
`TK_Status` | `Interpret`
`TK_Status` | `Interpret`
bool | `NeedsContext`
void | `Reset`
`TK_Status` | `Clone`
bool | `Direct`

## Detailed Description

class `HTK_Reference` : public TK_Reference

  Provides HOOPS/3dGS-specific handling of the TKE_Reference opcode.

  This class complements the read/write functionality implemented in the base class by overloading the Interpret and Execute methods to provide HOOPS/3dGS-specific opcode handling.

  Writing: The HOOPS/3dGS database is queried in the Interpret method, and this data is then written to the HSF file by the Write method Reading: The data is read from the HSF file by the Read method, and is mapped to the HOOPS/3dGS scene-graph within the Execute method.

  Export/import of additional user-data (which is associated with this HSF object) would typically be done by overloading the Write and Read methods.

  Public Functions

  inline `HTK_Reference`()

    constructor

  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 `Interpret`(BStreamFileToolkit &tk, ID_Key key, int variant = 0)
  inline TK_Status `Interpret`(BStreamFileToolkit &tk, ID_Key key, char const *special)
  virtual bool `NeedsContext`(BStreamFileToolkit &tk) const

    Allows the handler to specify if it needs the containing context to be reopened (currently only used for revisits on geometry references)

    Returns: | The answer.

  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.

  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.

  inline bool `Direct`() const

Conversation saved
HOOPSY BETA

### Hello! I'm HOOPSY

Your multilingual generative AI assistant for documentation. Ask me anything about HOOPS Visualize 3DF in your own language, or choose a sample question below to start a conversation:

What is HOOPS Visualize 3DF?
What are the latest release notes for HOOPS Visualize 3DF?
How do I start evaluating HOOPS Visualize 3DF?
How do I write my first sample application?
How can I get assistance?

HOOPSY may store conversations according to OpenAI's policy. Responses may not always be accurate.

HOOPSY is thinking...