#include <BOpcodeHandler.h>
Public Member Functions | |
TK_Status | Clone (BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const |
char alter * | GetBumpName () alter |
char const * | GetBumpName () const |
int | GetChannels () const |
float const * | GetDiffuse () const |
char alter * | GetDiffuseName () alter |
char const * | GetDiffuseName () const |
float const * | GetEmission () const |
char alter * | GetEmissionName () alter |
char const * | GetEmissionName () const |
char alter * | GetEnvironmentName () alter |
char const * | GetEnvironmentName () const |
int | GetGeometry () const |
float | GetGloss () const |
float | GetIndex () const |
float const * | GetMirror () const |
char alter * | GetMirrorName () alter |
char const * | GetMirrorName () const |
float const * | GetSpecular () const |
char alter * | GetSpecularName () alter |
char const * | GetSpecularName () const |
float const * | GetTransmission () const |
char alter * | GetTransmissionName () alter |
char const * | GetTransmissionName () const |
TK_Status | Read (BStreamFileToolkit &tk) alter |
TK_Status | ReadAscii (BStreamFileToolkit &tk) alter |
Deprecated. | |
void | Reset () alter |
void | SetBumpName (int length) alter |
void | SetBumpName (char const *name) alter |
void | SetChannels (int c) alter |
void | SetDiffuse (float const *rgb) alter |
void | SetDiffuse (float r, float g, float b) alter |
void | SetDiffuseName (int length) alter |
void | SetDiffuseName (char const *name) alter |
void | SetEmission (float const *rgb) alter |
void | SetEmission (float r, float g, float b) alter |
void | SetEmissionName (int length) alter |
void | SetEmissionName (char const *name) alter |
void | SetEnvironmentName (int length) alter |
void | SetEnvironmentName (char const *name) alter |
void | SetGeometry (int m) alter |
void | SetGloss (float g) alter |
void | SetIndex (float i) alter |
void | SetMirror (float const *rgb) alter |
void | SetMirror (float r, float g, float b) alter |
void | SetMirrorName (int length) alter |
void | SetMirrorName (char const *name) alter |
void | SetSpecular (float const *rgb) alter |
void | SetSpecular (float r, float g, float b) alter |
void | SetSpecularName (int length) alter |
void | SetSpecularName (char const *name) alter |
void | SetTransmission (float const *rgb) alter |
void | SetTransmission (float r, float g, float b) alter |
void | SetTransmissionName (int length) alter |
void | SetTransmissionName (char const *name) alter |
TK_Status | Write (BStreamFileToolkit &tk) alter |
TK_Status | WriteAscii (BStreamFileToolkit &tk) alter |
Deprecated. | |
Protected Member Functions | |
void | set_channel_name (channel alter &c, int length, int which_channel=-1) alter |
internal use | |
void | set_channel_name (channel alter &c, char const *name, int which_channel=-1) alter |
internal use | |
void | set_channel_rgb (channel alter &c, float r, float g, float b, int which_channel=-1) alter |
internal use | |
Protected Attributes | |
channel | m_bump |
internal use | |
short | m_channels |
internal use | |
channel | m_diffuse |
internal use | |
channel | m_emission |
internal use | |
channel | m_environment |
internal use; note: environment & bump are never a simple RGB type color | |
float | m_gloss |
internal use | |
float | m_index |
internal use | |
int | m_mask |
internal use | |
channel | m_mirror |
internal use | |
channel | m_specular |
internal use | |
int | m_substage |
internal use; To track the subcases | |
channel | m_transmission |
internal use | |
Classes | |
class | channel |
TK_Color provides support for writing/reading the TKE_Color opcode object to/from an HSF file.
The HOOPS/3dGS scene-graph segments can have a 'named' color (i.e. "faces = red, lines = blue")
TK_Status TK_Color::Clone | ( | BStreamFileToolkit & | tk, | |
BBaseOpcodeHandler ** | handler | |||
) | const [virtual] |
Copies the opcode handler
tk | A reference to the BStreamFileToolkit object. | |
handler | A pointer to the opcode handler object. Passed by reference. |
Reimplemented from BBaseOpcodeHandler.
Reimplemented in HTK_Color.
char alter* TK_Color::GetBumpName | ( | ) | [inline] |
Returns the address of the bump texture name buffer, which may be modified directly.
char const* TK_Color::GetBumpName | ( | ) | const [inline] |
Returns the address of the bump texture name string.
int TK_Color::GetChannels | ( | ) | const [inline] |
Returns the mask indicating which color/material components are valid. Color channels are specified by TKO_Color_Channels.
float const* TK_Color::GetDiffuse | ( | ) | const [inline] |
Returns the diffuse color as the address of a float triplet
char alter* TK_Color::GetDiffuseName | ( | ) | [inline] |
Returns the address of the diffuse color name buffer, which may be modified directly.
char const* TK_Color::GetDiffuseName | ( | ) | const [inline] |
Returns the address of the diffuse color name string.
float const* TK_Color::GetEmission | ( | ) | const [inline] |
Returns the emission color as the address of a float triplet
char alter* TK_Color::GetEmissionName | ( | ) | [inline] |
Returns the address of the emission color name buffer, which may be modified directly.
char const* TK_Color::GetEmissionName | ( | ) | const [inline] |
Returns the address of the emission color name string.
char alter* TK_Color::GetEnvironmentName | ( | ) | [inline] |
Returns the address of the environment texture name buffer, which may be modified directly.
char const* TK_Color::GetEnvironmentName | ( | ) | const [inline] |
Returns the address of the environment texture name string.
int TK_Color::GetGeometry | ( | ) | const [inline] |
Returns the mask value which indicates which types of geometry are affected by this color setting. Geometry types are specified by TKO_Geometry_Bits.
float TK_Color::GetGloss | ( | ) | const [inline] |
Returns the gloss value
float TK_Color::GetIndex | ( | ) | const [inline] |
Returns the index of refraction
float const* TK_Color::GetMirror | ( | ) | const [inline] |
Returns the mirror color as the address of a float triplet
char alter* TK_Color::GetMirrorName | ( | ) | [inline] |
Returns the address of the mirror color name buffer, which may be modified directly.
char const* TK_Color::GetMirrorName | ( | ) | const [inline] |
Returns the address of the mirror color name string.
float const* TK_Color::GetSpecular | ( | ) | const [inline] |
Returns the specular color as the address of a float triplet
char alter* TK_Color::GetSpecularName | ( | ) | [inline] |
Returns the address of the specular color name buffer, which may be modified directly.
char const* TK_Color::GetSpecularName | ( | ) | const [inline] |
Returns the address of the specular color name string.
float const* TK_Color::GetTransmission | ( | ) | const [inline] |
Returns the transmission color as the address of a float triplet
char alter* TK_Color::GetTransmissionName | ( | ) | [inline] |
Returns the address of the transmission color name buffer, which may be modified directly.
char const* TK_Color::GetTransmissionName | ( | ) | const [inline] |
Returns the address of the transmission color name string.
TK_Status TK_Color::Read | ( | BStreamFileToolkit & | tk | ) | [virtual] |
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.
tk | A reference to the BStreamFileToolkit object. |
Implements BBaseOpcodeHandler.
void TK_Color::Reset | ( | ) | [virtual] |
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.
Reimplemented from BBaseOpcodeHandler.
void TK_Color::SetBumpName | ( | int | length | ) | [inline] |
Sets the bump texture string buffer. Allocates a buffer to hold a string of 'length' characters
References TKO_Channel_Bump.
void TK_Color::SetBumpName | ( | char const * | name | ) | [inline] |
Sets the bump texture as a string value. Allocates the buffer and copies the string
References TKO_Channel_Bump.
void TK_Color::SetChannels | ( | int | c | ) | [inline] |
Sets the mask indicating which color/material components are valid. Color channels are specified by TKO_Color_Channels. Note that TKO_Color_Channels are **NOT** bit masks, but rather indices, so you should pass (1<<TKO_Channel_Diffuse) here, for example.
References TKO_Channel_Extended, and TKO_Channel_Extended_Shift.
void TK_Color::SetDiffuse | ( | float const * | rgb | ) | [inline] |
Sets the diffuse color using a float triplet
void TK_Color::SetDiffuse | ( | float | r, | |
float | g, | |||
float | b | |||
) | [inline] |
Sets the diffuse color using discrete rgb values
References TKO_Channel_Diffuse.
void TK_Color::SetDiffuseName | ( | int | length | ) | [inline] |
Sets the diffuse color string buffer. Allocates a buffer to hold a string of 'length' characters
References TKO_Channel_Diffuse.
void TK_Color::SetDiffuseName | ( | char const * | name | ) | [inline] |
Sets the diffuse color as a string value. Allocates the buffer and copies the string
References TKO_Channel_Diffuse.
void TK_Color::SetEmission | ( | float const * | rgb | ) | [inline] |
Sets the emission color using a float triplet
void TK_Color::SetEmission | ( | float | r, | |
float | g, | |||
float | b | |||
) | [inline] |
Sets the emission color using discrete rgb values
References TKO_Channel_Emission.
void TK_Color::SetEmissionName | ( | int | length | ) | [inline] |
Sets the emission color string buffer. Allocates a buffer to hold a string of 'length' characters
References TKO_Channel_Emission.
void TK_Color::SetEmissionName | ( | char const * | name | ) | [inline] |
Sets the emission color as a string value. Allocates the buffer and copies the string
References TKO_Channel_Emission.
void TK_Color::SetEnvironmentName | ( | int | length | ) | [inline] |
Sets the environment texture string buffer. Allocates a buffer to hold a string of 'length' characters
References TKO_Channel_Environment.
void TK_Color::SetEnvironmentName | ( | char const * | name | ) | [inline] |
Sets the environment texture as a string value. Allocates the buffer and copies the string
References TKO_Channel_Environment.
void TK_Color::SetGeometry | ( | int | m | ) | [inline] |
Sets the mask value which indicates which types of geometry are affected by this color setting. Geometry types are specified by TKO_Geometry_Bits.
References TKO_Geo_All_Colors, TKO_Geo_Extended, TKO_Geo_Extended2, TKO_Geo_Extended2_Mask, TKO_Geo_Extended_Colors, TKO_Geo_Extended_Colors_Mask, and TKO_Geo_Extended_Mask.
void TK_Color::SetGloss | ( | float | g | ) | [inline] |
Sets the gloss value
References TKO_Channel_Gloss.
void TK_Color::SetIndex | ( | float | i | ) | [inline] |
Sets the index of refraction
References TKO_Channel_Index.
void TK_Color::SetMirror | ( | float const * | rgb | ) | [inline] |
Sets the mirror color using a float triplet
void TK_Color::SetMirror | ( | float | r, | |
float | g, | |||
float | b | |||
) | [inline] |
Sets the mirror color using discrete rgb values
References TKO_Channel_Mirror.
void TK_Color::SetMirrorName | ( | int | length | ) | [inline] |
Sets the mirror color string buffer. Allocates a buffer to hold a string of 'length' characters
References TKO_Channel_Mirror.
void TK_Color::SetMirrorName | ( | char const * | name | ) | [inline] |
Sets the mirror color as a string value. Allocates the buffer and copies the string
References TKO_Channel_Mirror.
void TK_Color::SetSpecular | ( | float const * | rgb | ) | [inline] |
Sets the specular color using a float triplet
void TK_Color::SetSpecular | ( | float | r, | |
float | g, | |||
float | b | |||
) | [inline] |
Sets the specular color using discrete rgb values
References TKO_Channel_Specular.
void TK_Color::SetSpecularName | ( | int | length | ) | [inline] |
Sets the specular color string buffer. Allocates a buffer to hold a string of 'length' characters
References TKO_Channel_Specular.
void TK_Color::SetSpecularName | ( | char const * | name | ) | [inline] |
Sets the specular color as a string value. Allocates the buffer and copies the string
References TKO_Channel_Specular.
void TK_Color::SetTransmission | ( | float const * | rgb | ) | [inline] |
Sets the transmission color using a float triplet
void TK_Color::SetTransmission | ( | float | r, | |
float | g, | |||
float | b | |||
) | [inline] |
Sets the transmission color using discrete rgb values
References TKO_Channel_Transmission.
void TK_Color::SetTransmissionName | ( | int | length | ) | [inline] |
Sets the transmission color string buffer. Allocates a buffer to hold a string of 'length' characters
References TKO_Channel_Transmission.
void TK_Color::SetTransmissionName | ( | char const * | name | ) | [inline] |
Sets the transmission color as a string value. Allocates the buffer and copies the string
References TKO_Channel_Transmission.
TK_Status TK_Color::Write | ( | BStreamFileToolkit & | tk | ) | [virtual] |
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.
tk | A reference to the BStreamFileToolkit object. |
Implements BBaseOpcodeHandler.