Alphabetical Class Index   Class Hierarchy   Compound Members   File Members   File List  

HTK_Texture Class Reference

Provides HOOPS/3dGS-specific handling of the TKE_Texture. More...

#include <HOpcodeHandler.h>

Public Member Functions

TK_Status Clone (BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
 
TK_Status Execute (BStreamFileToolkit &tk)
 
TK_Status Interpret (BStreamFileToolkit &tk, ID_Key key, int variant=0)
 
TK_Status Interpret (BStreamFileToolkit &tk, ID_Key key, char const *special)
 
void Reset ()
 
TK_Status Write (BStreamFileToolkit &tk)
 
- Public Member Functions inherited from TK_Texture
TK_Status Clone (BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
 
int GetAlphaMapping () const
 
int GetApplicationMode () const
 
int GetBlueMapping () const
 
char const * GetCamera () const
 
char * GetCamera ()
 
int GetDecimation () const
 
int GetFlags () const
 
int GetGreenMapping () const
 
char const * GetImage () const
 
char * GetImage ()
 
int GetInterpolation () const
 
int GetLayout () const
 
char const * GetName () const
 
char * GetName ()
 
int GetParameterFunction () const
 
int GetParameterOffset () const
 
int GetParameterSource () const
 
int GetRedMapping () const
 
char const * GetShaderSource () const
 
char * GetShaderSource ()
 
int GetTiling () const
 
char const * GetTransform () const
 
char * GetTransform ()
 
float const * GetValueScale () const
 
TK_Status Read (BStreamFileToolkit &tk)
 
TK_Status ReadAscii (BStreamFileToolkit &tk)
 Deprecated.
 
void Reset ()
 
void SetAlphaMapping (int p)
 
void SetApplicationMode (int p)
 
void SetBlueMapping (int p)
 
void SetCamera (char const *camera)
 
void SetCamera (int length)
 
void SetDecimation (int p)
 
void SetFlags (int f)
 
void SetGreenMapping (int p)
 
void SetImage (char const *image)
 
void SetImage (int length)
 
void SetInterpolation (int p)
 
void SetLayout (int p)
 
void SetName (char const *name)
 
void SetName (int length)
 
void SetParameterFunction (int p)
 
void SetParameterOffset (int p)
 
void SetParameterSource (int p)
 
void SetRedMapping (int p)
 
void SetShaderSource (char const *shader_source)
 
void SetShaderSource (int length)
 
void SetTiling (int p)
 
void SetTransform (char const *transform)
 
void SetTransform (int length)
 
void SetValueScale (float v1, float v2)
 
 TK_Texture ()
 
TK_Status Write (BStreamFileToolkit &tk)
 
TK_Status WriteAscii (BStreamFileToolkit &tk)
 Deprecated.
 
- Public Member Functions inherited from BBaseOpcodeHandler
 BBaseOpcodeHandler (int op)
 
unsigned char General_Flags () const
 
char const * GetLoggingString () const
 
char * GetLoggingString ()
 
void LogDebug (BStreamFileToolkit &tk, char const *string=0)
 
virtual bool Match_Instance (BStreamFileToolkit const &tk, Recorded_Instance *instance)
 
virtual bool NeedsContext (BStreamFileToolkit &tk) const
 
bool NeedsTag () const
 
unsigned char Opcode () const
 
int Pass (BStreamFileToolkit &tk) const
 
void Set_General_Flags (int f)
 
void SetLoggingString (char const *segment)
 
void SetLoggingString (int length)
 
void SetNeedsTag (bool n)
 
TK_Status Tag (BStreamFileToolkit &tk, int variant=-1) const
 
bool Tagging (BStreamFileToolkit &tk) const
 
- Public Member Functions inherited from BControlledMemoryObject
void operator delete (void *p)
 force deallocation to happen in the stream toolkit's scope
 
void * operator new (size_t size)
 force allocation to happen in the stream toolkit's scope
 

Protected Attributes

HC_KEY m_key
 for internal use only
 
BBaseOpcodeHandlerm_referee
 for internal use only
 
int mh_stage
 
- Protected Attributes inherited from TK_Texture
char m_alpha_mapping
 
char m_apply_mode
 
char m_blue_mapping
 
char * m_camera
 
int m_camera_length
 
char m_decimation
 
int m_flags
 
char m_green_mapping
 
char * m_image
 
int m_image_length
 
char m_interpolation
 
char m_layout
 
char * m_name
 
int m_name_length
 
char m_param_function
 
char m_param_offset
 
char m_param_source
 
char m_red_mapping
 
char * m_shader_source
 
int m_shader_source_length
 
int m_source_dimensions [3]
 
int m_substage
 
char m_tiling
 
char * m_transform
 
float m_value_scale [2]
 
- Protected Attributes inherited from BBaseOpcodeHandler
char * m_ascii_buffer
 
int m_ascii_length
 
int m_ascii_progress
 Tracks the amount of data that has been read/written so far by GetAscii functions.
 
int m_ascii_size
 
int m_ascii_stage
 
unsigned char m_byte
 temporary
 
char m_char
 temporary
 
int m_debug_allocated
 
int m_debug_length
 
char * m_debug_string
 
unsigned char m_general_flags
 Basic flags common to many handlers.
 
int m_int
 temporary
 
bool m_needs_tag
 Indicate if this object explicitly needs tagging.
 
unsigned char m_opcode
 The opcode being handled by this particular object.
 
int m_progress
 Tracks the amount of data that has been read/written so far.
 
int m_stage
 The writing stage.
 
unsigned short m_unsigned_short
 temporary
 

Additional Inherited Members

- Protected Member Functions inherited from TK_Texture
void set_image (int length)
 for internal use only
 
void set_image (char const *image)
 for internal use only
 
void set_name (int length)
 for internal use only
 
void set_name (char const *name)
 for internal use only
 
void set_transform (int length)
 for internal use only
 
void set_transform (char const *transform)
 for internal use only
 
- Protected Member Functions inherited from BBaseOpcodeHandler
void add_segment (BStreamFileToolkit &tk, ID_Key key)
 for internal use only
 
void adjust_written (BStreamFileToolkit &tk, int count)
 for internal use only
 
void bytes_to_floats (unsigned char const *in, float *out, int count) const
 for internal use only
 
void decrease_nesting (BStreamFileToolkit &tk, int amount=1)
 for internal use only
 
bool Find_Instance (BStreamFileToolkit &tk, int val1, int val2, int val3)
 
bool Find_Item (BStreamFileToolkit &tk, ID_Key key) const
 
void fix (int *i, int n)
 for internal use only
 
void fix (short *s, int n)
 for internal use only
 
void fix_in (float *f, int n)
 for internal use only
 
void fix_in (double *d, int n)
 for internal use only
 
void fix_out (float *f, int n)
 for internal use only
 
void fix_out (double *d, int n)
 for internal use only
 
short flip (short s)
 for internal use only
 
int flip (int i)
 for internal use only
 
void floats_to_bytes (float const *in, unsigned char *out, int count) const
 for internal use only
 
TK_Status GetAsciiData (BStreamFileToolkit &tk, int *rInts, unsigned int n)
 
TK_Status GetAsciiData (BStreamFileToolkit &tk, const char *tag, unsigned char &value)
 
TK_Status GetAsciiData (BStreamFileToolkit &tk, const char *tag, char &value)
 
TK_Status GetAsciiData (BStreamFileToolkit &tk, const char *tag, unsigned short &value)
 
TK_Status GetAsciiData (BStreamFileToolkit &tk, const char *tag, short &value)
 
TK_Status GetAsciiData (BStreamFileToolkit &tk, const char *tag, int &value)
 
TK_Status GetAsciiData (BStreamFileToolkit &tk, const char *tag, float &value)
 
TK_Status GetAsciiData (BStreamFileToolkit &tk, const char *tag, float *rFloats, unsigned int n)
 
TK_Status GetAsciiData (BStreamFileToolkit &tk, const char *tag, char *m_string, unsigned int n)
 
TK_Status GetAsciiData (BStreamFileToolkit &tk, const char *tag, unsigned char *m_string, unsigned int n)
 
TK_Status GetAsciiData (BStreamFileToolkit &tk, const char *tag, int *rInts, unsigned int n)
 
TK_Status GetAsciiData (BStreamFileToolkit &tk, const char *tag, short *rShorts, unsigned int n)
 
TK_Status GetAsciiData (BStreamFileToolkit &tk, const char *tag, unsigned short *rShorts, unsigned int n)
 
TK_Status GetAsciiHex (BStreamFileToolkit &tk, const char *tag, unsigned char &value)
 
TK_Status GetAsciiHex (BStreamFileToolkit &tk, const char *tag, int &value)
 
TK_Status GetAsciiHex (BStreamFileToolkit &tk, const char *tag, char &value)
 
TK_Status GetAsciiHex (BStreamFileToolkit &tk, const char *tag, unsigned short &value)
 
TK_Status GetAsciiImageData (BStreamFileToolkit &tk, const char *tag, unsigned char *rValues, unsigned int n)
 
TK_Status GetData (BStreamFileToolkit &tk, char *b, int n)
 
TK_Status GetData (BStreamFileToolkit &tk, short *s, int n)
 
TK_Status GetData (BStreamFileToolkit &tk, int *i, int n)
 
TK_Status GetData (BStreamFileToolkit &tk, float *f, int n)
 
TK_Status GetData (BStreamFileToolkit &tk, double *d, int n)
 
TK_Status GetData (BStreamFileToolkit &tk, unsigned char *b, int n)
 
TK_Status GetData (BStreamFileToolkit &tk, unsigned short *s, int n)
 
TK_Status GetData (BStreamFileToolkit &tk, unsigned int *i, int n)
 
TK_Status GetData (BStreamFileToolkit &tk, char &c)
 
TK_Status GetData (BStreamFileToolkit &tk, short &s)
 
TK_Status GetData (BStreamFileToolkit &tk, int &i)
 
TK_Status GetData (BStreamFileToolkit &tk, unsigned char &b)
 
TK_Status GetData (BStreamFileToolkit &tk, unsigned short &s)
 
TK_Status GetData (BStreamFileToolkit &tk, unsigned int &i)
 
TK_Status GetData (BStreamFileToolkit &tk, float &f)
 
TK_Status GetData (BStreamFileToolkit &tk, double &d)
 
TK_Status GetGeneral (BStreamFileToolkit &tk)
 
void increase_nesting (BStreamFileToolkit &tk, int amount=1)
 for internal use only
 
ID_Key last_key (BStreamFileToolkit &tk) const
 obsolete
 
void log_opcode (BStreamFileToolkit &tk, unsigned int sequence, unsigned char opcode)
 for internal use only
 
TK_Status LookatData (BStreamFileToolkit &tk, unsigned char &b)
 
BBaseOpcodeHandlerOpcode_Handler (BStreamFileToolkit &tk, unsigned char op) const
 
TK_Status PutAsciiData (BStreamFileToolkit &tk, char const *tag, char const *b, int n)
 
TK_Status PutAsciiData (BStreamFileToolkit &tk, char const *tag, short const *s, int n)
 
TK_Status PutAsciiData (BStreamFileToolkit &tk, char const *tag, int const *i, int n)
 
TK_Status PutAsciiData (BStreamFileToolkit &tk, char const *tag, float const *f, int n)
 
TK_Status PutAsciiData (BStreamFileToolkit &tk, char const *tag, unsigned char const *b, int n)
 
TK_Status PutAsciiData (BStreamFileToolkit &tk, char const *tag, unsigned short const *s, int n)
 
TK_Status PutAsciiData (BStreamFileToolkit &tk, char const *tag, unsigned int const *i, int n)
 
TK_Status PutAsciiData (BStreamFileToolkit &tk, char const *tag, char const &c)
 
TK_Status PutAsciiData (BStreamFileToolkit &tk, char const *tag, short const &s)
 
TK_Status PutAsciiData (BStreamFileToolkit &tk, char const *tag, int const &i)
 
TK_Status PutAsciiData (BStreamFileToolkit &tk, char const *tag, unsigned char const &b)
 
TK_Status PutAsciiData (BStreamFileToolkit &tk, char const *tag, unsigned short const &s)
 
TK_Status PutAsciiData (BStreamFileToolkit &tk, char const *tag, unsigned int const &i)
 
TK_Status PutAsciiData (BStreamFileToolkit &tk, char const *tag, float const &f)
 
TK_Status PutAsciiFlag (BStreamFileToolkit &tk, char const *tag, int const &i)
 
TK_Status PutAsciiHex (BStreamFileToolkit &tk, char const *tag, int const &i)
 
TK_Status PutAsciiMask (BStreamFileToolkit &tk, char const *tag, int const &i)
 
TK_Status PutAsciiOpcode (BStreamFileToolkit &tk, int adjust=1, bool is_end=false, bool want_newline=true)
 
TK_Status PutData (BStreamFileToolkit &tk, char const *b, int n)
 
TK_Status PutData (BStreamFileToolkit &tk, short const *s, int n)
 
TK_Status PutData (BStreamFileToolkit &tk, int const *i, int n)
 
TK_Status PutData (BStreamFileToolkit &tk, float const *f, int n)
 
TK_Status PutData (BStreamFileToolkit &tk, double const *d, int n)
 
TK_Status PutData (BStreamFileToolkit &tk, unsigned char const *b, int n)
 
TK_Status PutData (BStreamFileToolkit &tk, unsigned short const *s, int n)
 
TK_Status PutData (BStreamFileToolkit &tk, unsigned int const *i, int n)
 
TK_Status PutData (BStreamFileToolkit &tk, char const &c)
 
TK_Status PutData (BStreamFileToolkit &tk, short const &s)
 
TK_Status PutData (BStreamFileToolkit &tk, int const &i)
 
TK_Status PutData (BStreamFileToolkit &tk, unsigned char const &b)
 
TK_Status PutData (BStreamFileToolkit &tk, unsigned short const &s)
 
TK_Status PutData (BStreamFileToolkit &tk, unsigned int const &i)
 
TK_Status PutData (BStreamFileToolkit &tk, float const &f)
 
TK_Status PutData (BStreamFileToolkit &tk, double const &d)
 
TK_Status PutEndXMLTag (BStreamFileToolkit &tk, char const *tag)
 
TK_Status PutGeneral (BStreamFileToolkit &tk)
 
TK_Status PutOpcode (BStreamFileToolkit &tk, int adjust=1)
 
TK_Status PutStartXMLTag (BStreamFileToolkit &tk, char const *tag)
 
TK_Status Read_Referenced_Segment (BStreamFileToolkit &tk, int &i_progress)
 
TK_Status ReadAsciiLine (BStreamFileToolkit &tk, unsigned int *readSize=0)
 
TK_Status ReadAsciiWord (BStreamFileToolkit &tk, unsigned int *readSize=0)
 
TK_Status ReadEndOpcode (BStreamFileToolkit &tk)
 
void Record_Instance (BStreamFileToolkit &tk, ID_Key key, int variant, int val1, int val2, int val3) const
 
void Remember_Item (BStreamFileToolkit &tk, ID_Key key) const
 
ID_Key remove_segment (BStreamFileToolkit &tk)
 for internal use only
 
bool RemoveAngularBrackets (char *string)
 
bool RemoveQuotes (char *string)
 
void Revisit (BStreamFileToolkit &tk, float priority=0.0f, int variant=0) const
 
void set_last_key (BStreamFileToolkit &tk, ID_Key key)
 sets the given key as "most recent" on the toolkit for the purposes of associating keys with indices
 
TK_Status SkipNewlineAndTabs (BStreamFileToolkit &tk, unsigned int *readSize=0)
 
bool validate_count (int count, int limit=1<< 24) const
 
- Static Protected Member Functions inherited from BBaseOpcodeHandler
static float read_float (char const *cp, char const **newcpp=0)
 
static float read_float (char const *cp, char **newcpp)
 for internal use only
 
static char * write_float (char *buffer, double f)
 for internal use only
 

Detailed Description

Provides HOOPS/3dGS-specific handling of the TKE_Texture.

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.

Member Function Documentation

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

Copies the opcode handler

Parameters
tkA reference to the BStreamFileToolkit object.
handlerA pointer to the opcode handler object. Passed by reference.
Returns
The result of the function call.

Reimplemented from BBaseOpcodeHandler.

TK_Status HTK_Texture::Execute ( BStreamFileToolkit tk)
virtual

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

Parameters
tkA reference to the BStreamFileToolkit object.
Returns
The result of the function call.

Reimplemented from BBaseOpcodeHandler.

TK_Status HTK_Texture::Interpret ( BStreamFileToolkit tk,
ID_Key  key,
int  variant = 0 
)
inlinevirtual

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
tkA reference to the BStreamFileToolkit object.
keyAn identifier to the object (for example, the HOOPS key of a geometry item)
variantoptional specification of an alternate form, such as a Level-of-Detail representation
Returns
The result of the function call.

Reimplemented from BBaseOpcodeHandler.

References BBaseOpcodeHandler::Interpret().

TK_Status HTK_Texture::Interpret ( BStreamFileToolkit tk,
ID_Key  key,
char const *  special 
)
virtual

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
tkA reference to the BStreamFileToolkit object.
keyAn identifier to the object (for example, the HOOPS key of a geometry item)
specialA string value of particular data
Returns
The result of the function call.

Reimplemented from BBaseOpcodeHandler.

void HTK_Texture::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.

TK_Status HTK_Texture::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.

Parameters
tkA reference to the BStreamFileToolkit object.
Returns
The result of the function call.

Implements BBaseOpcodeHandler.

Member Data Documentation

int HTK_Texture::mh_stage
protected

create a class-specific 'stage' var to avoid confusion with base class 'stage' variable


The documentation for this class was generated from the following file: