#include <HOpcodeHandler.h>
Public Member Functions | |
TK_Status | Clone (BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const |
TK_Status | Execute (BStreamFileToolkit &tk) alter |
HTK_Bounding (unsigned char opcode, float *center, float radius) | |
HTK_Bounding (unsigned char opcode, float *min, float *max) | |
HTK_Bounding (unsigned char opcode) | |
TK_Status | Interpret (BStreamFileToolkit &tk, ID_Key key, char const *special) alter |
TK_Status | Interpret (BStreamFileToolkit &tk, ID_Key key, int variant=0) alter |
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.
Two different opcodes are used as follows: The TKE_Bounding opcode will exporta bounding volume that was explicitly set on a HOOPS segment (if any). The TKE_Bounding_Info will cause an explicit computation of the HOOPS/3dGS bounding information and export it.
HTK_Bounding::HTK_Bounding | ( | unsigned char | opcode | ) | [inline] |
default constructor
HTK_Bounding::HTK_Bounding | ( | unsigned char | opcode, | |
float * | min, | |||
float * | max | |||
) | [inline] |
constructor that accepts min and max values
HTK_Bounding::HTK_Bounding | ( | unsigned char | opcode, | |
float * | center, | |||
float | radius | |||
) | [inline] |
constructor that accepts center and radius values
TK_Status HTK_Bounding::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 TK_Bounding.
TK_Status HTK_Bounding::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.
tk | A reference to the BStreamFileToolkit object. |
Reimplemented from BBaseOpcodeHandler.
TK_Status HTK_Bounding::Interpret | ( | BStreamFileToolkit & | tk, | |
ID_Key | key, | |||
char const * | special | |||
) | [inline, 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.
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 |
Reimplemented from BBaseOpcodeHandler.
References BBaseOpcodeHandler::Interpret().
TK_Status HTK_Bounding::Interpret | ( | BStreamFileToolkit & | tk, | |
ID_Key | key, | |||
int | variant = 0 | |||
) | [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.
tk | A reference to the BStreamFileToolkit object. | |
key | An identifier to the object (for example, the HOOPS key of a geometry item) | |
variant | optional specification of an alternate form, such as a Level-of-Detail representation |
Reimplemented from BBaseOpcodeHandler.