# TK_Color_By_Index

## Functions

| `TK_Color_By_Index`
`TK_Status` | `Read`
`TK_Status` | `Write`
`TK_Status` | `Clone`
`TK_Status` | `ReadAscii`
`TK_Status` | `WriteAscii`
void | `SetGeometry`
int | `GetGeometry`
void | `SetIndex`
int | `GetIndex`

## Detailed Description

class TK_Color_By_Index : public BBaseOpcodeHandler

  Handles the TKE_Color_By_Index and TKE_Color_By_Index_16 opcode.

  TK_Color_By_Index provides support for writing/reading the TKE_Color_By_Index and TKE_Color_By_Index_16 opcode objects to/from an HSF file. (The first being an 8-bit index, the second being a 16-bit index)

  The HOOPS/3dGS scene-graph segments can have colors set by index into a colormap

  Public Functions

  inline TK_Color_By_Index(unsigned char opcode)

    constructor

  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.

  inline void SetGeometry(int m)

    Sets the mask value which indicates which types of geometry are affected by this color setting. Geometry types are specified by TKO_Geometry_Bits.

  inline int GetGeometry() const

    Returns the mask value which indicates which types of geometry are affected by this color setting. Geometry types are specified by TKO_Geometry_Bits.

  inline void SetIndex(int i)

    Sets the color value as an index into the effective color map

  inline int GetIndex() const

    Returns the color value as an index into the effective color map