The BBaseOpcodeHandler abstract class is used as a base for derived classes which manage logical pieces of HOOPS Stream File information. More...
#include <BOpcodeHandler.h>
Public Member Functions | |
BBaseOpcodeHandler (int op) | |
virtual TK_Status | Clone (BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const |
virtual TK_Status | Execute (BStreamFileToolkit &tk) |
unsigned char | General_Flags () const |
char const * | GetLoggingString () const |
char * | GetLoggingString () |
virtual TK_Status | Interpret (BStreamFileToolkit &tk, ID_Key key, int variant=0) |
virtual TK_Status | Interpret (BStreamFileToolkit &tk, ID_Key key, char const *special) |
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 |
virtual TK_Status | Read (BStreamFileToolkit &tk)=0 |
virtual void | Reset () |
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 |
virtual TK_Status | Write (BStreamFileToolkit &tk)=0 |
![]() | |
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 Member Functions | |
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 | 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 | 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 | |
BBaseOpcodeHandler * | Opcode_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 | 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 | |
static void | fix (int *i, int n) |
for internal use only | |
static void | fix (short *s, int n) |
for internal use only | |
static void | fix_in (float *f, int n) |
for internal use only | |
static void | fix_in (double *d, int n) |
for internal use only | |
static void | fix_out (float *f, int n) |
for internal use only | |
static void | fix_out (double *d, int n) |
for internal use only | |
static short | flip (short s) |
for internal use only | |
static int | flip (int i) |
for internal use only | |
static TK_Status | GetData (BStreamFileToolkit &tk, char *b, int n) |
static TK_Status | GetData (BStreamFileToolkit &tk, short *s, int n) |
static TK_Status | GetData (BStreamFileToolkit &tk, int *i, int n) |
static TK_Status | GetData (BStreamFileToolkit &tk, float *f, int n) |
static TK_Status | GetData (BStreamFileToolkit &tk, double *d, int n) |
static TK_Status | GetData (BStreamFileToolkit &tk, unsigned char *b, int n) |
static TK_Status | GetData (BStreamFileToolkit &tk, unsigned short *s, int n) |
static TK_Status | GetData (BStreamFileToolkit &tk, unsigned int *i, int n) |
static TK_Status | GetData (BStreamFileToolkit &tk, char &c) |
static TK_Status | GetData (BStreamFileToolkit &tk, short &s) |
static TK_Status | GetData (BStreamFileToolkit &tk, int &i) |
static TK_Status | GetData (BStreamFileToolkit &tk, unsigned char &b) |
static TK_Status | GetData (BStreamFileToolkit &tk, unsigned short &s) |
static TK_Status | GetData (BStreamFileToolkit &tk, unsigned int &i) |
static TK_Status | GetData (BStreamFileToolkit &tk, float &f) |
static TK_Status | GetData (BStreamFileToolkit &tk, double &d) |
static TK_Status | LookatData (BStreamFileToolkit &tk, unsigned char &b) |
static TK_Status | PutData (BStreamFileToolkit &tk, char const *b, int n) |
static TK_Status | PutData (BStreamFileToolkit &tk, short const *s, int n) |
static TK_Status | PutData (BStreamFileToolkit &tk, int const *i, int n) |
static TK_Status | PutData (BStreamFileToolkit &tk, float const *f, int n) |
static TK_Status | PutData (BStreamFileToolkit &tk, double const *d, int n) |
static TK_Status | PutData (BStreamFileToolkit &tk, unsigned char const *b, int n) |
static TK_Status | PutData (BStreamFileToolkit &tk, unsigned short const *s, int n) |
static TK_Status | PutData (BStreamFileToolkit &tk, unsigned int const *i, int n) |
static TK_Status | PutData (BStreamFileToolkit &tk, char const &c) |
static TK_Status | PutData (BStreamFileToolkit &tk, short const &s) |
static TK_Status | PutData (BStreamFileToolkit &tk, int const &i) |
static TK_Status | PutData (BStreamFileToolkit &tk, unsigned char const &b) |
static TK_Status | PutData (BStreamFileToolkit &tk, unsigned short const &s) |
static TK_Status | PutData (BStreamFileToolkit &tk, unsigned int const &i) |
static TK_Status | PutData (BStreamFileToolkit &tk, float const &f) |
static TK_Status | PutData (BStreamFileToolkit &tk, double const &d) |
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 | |
Protected Attributes | |
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 | |
The BBaseOpcodeHandler abstract class is used as a base for derived classes which manage logical pieces of HOOPS Stream File information.
BBaseOpcodeHandler provides virtual functions which are implemented by derived classes to handle reading, writing, execution and interpretation of HOOPS Stream File information. Execution refers to the process of populating application-specific data structures with the information that has been read. Interpretation refers to the process of extracting application-specific data to prepare it for subsequent writing.
Each opcode handler manages opcodes which represent the various HOOPS/3dGS scene-graph objects which include segments, attributes, and geometric primitives.
The HSF file reading process involves reading the opcode at the start of each piece of binary information, and calling the Read method of the associated opcode handler. After the opcode handler reports that reading is complete, the Execute method should be called. (When using HoopsStream or BaseStream, the ParseBuffer method of the BStreamFileToolkit object encapsulates this process.)
The HSF file writing process involves determining the proper opcode for each piece of binary information, and calling the Interpret method of the associated opcode handler. After interpretation is complete, the Write method of the opcode handler should be called until writing is complete. (When using HoopsStream, the GenerateBuffer method of the HStreamFileToolkit encapsulates this process. However, if BaseStream is used, the Interpret/Write process must be performed manually.)
|
inline |
Default constructor for an BBaseOpcodeHandler object
op | value denoting the opcode that the object supports. This is necessary for opcode handlers that support more than one opcode, such as TK_Polypoint, which supports both TKE_Polygon and TKE_Polyline opcodes. |
|
inlinevirtual |
Copies the opcode handler
tk | A reference to the BStreamFileToolkit object. |
handler | A pointer to the opcode handler object. Passed by reference. |
Reimplemented in TK_External_Reference_Unicode, TK_External_Reference, TK_URL, TK_XML, TK_Material, TK_User_Data, TK_Complex_Clip_Region, TK_Clip_Region, TK_Clip_Rectangle, TK_Line_Style, TK_Named_Style_Def, TK_Glyph_Definition, TK_Thumbnail, TK_Texture, TK_Image, TK_Font, TK_Text, TK_Grid, TK_PolyCylinder, TK_Cylinder, TK_Sphere, TK_Ellipse, TK_Circle, TK_Cutting_Plane, TK_Spot_Light, TK_Area_Light, TK_NURBS_Surface, TK_NURBS_Curve, TK_Polypoint, TK_Line, TK_Point, TK_Bounding, TK_Text_Font, TK_Window, TK_Camera, TK_User_Value, TK_User_Index_Data, TK_User_Index, TK_Unicode_Options, TK_User_Options, TK_Conditional_Action, TK_Conditions, TK_Streaming, TK_Named, TK_Linear_Pattern, TK_Size, TK_Enumerated, TK_Matrix, TK_Selectability, TK_Visibility, TK_Geometry_Options, TK_Heuristics, TK_Rendering_Options, TK_Callback, TK_Color_Map, TK_Color_By_FIndex, TK_Color_By_Index, TK_Color_By_Value, TK_Color_RGB, TK_Color, TK_Renumber, TK_LOD, TK_Delete_Object, TK_Instance, TK_Reference, TK_Referenced_Segment, TK_Reopen_Segment, TK_Close_Segment, TK_Open_Segment, and TK_PolyPolypoint.
References BStreamFileToolkit::Error().
|
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 in TK_External_Reference_Unicode, TK_External_Reference, TK_XML, TK_User_Data, TK_Thumbnail, TK_Dictionary_Locater, TK_Dictionary, TK_Tag, TK_Geometry_Attributes, TK_Compression, TK_Terminator, TK_Comment, TK_File_Info, and TK_PolyPolypoint.
|
inlineprotected |
Searches for objects which are a [transformed] copy of previous objects
|
inlineprotected |
Determines if a segment has already been processed (avoid multiple writes of inclusions)
|
inline |
Returns the current general flags
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
inlinestaticprotected |
Gets n characters from the toolkit buffer and writes them into buffer b; returns result of function call.
|
inlinestaticprotected |
Gets n short integers from the toolkit buffer and writes them into buffer s; returns result of function call.
References TK_Normal.
|
inlinestaticprotected |
Gets n integers from the toolkit buffer and writes them into buffer i; returns result of function call.
References TK_Normal.
|
inlinestaticprotected |
Gets n floats from the toolkit buffer and writes them into buffer f; returns result of function call.
References TK_Normal.
|
inlinestaticprotected |
Gets n doubles from the toolkit buffer and writes them into buffer d; returns result of function call.
References TK_Normal.
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlineprotected |
Puts a the object's general flags into the toolkit buffer if appropriate; returns result of function call.
References BStreamFileToolkit::GetVersion(), and TK_Normal.
|
inline |
Get the debug string. Returns a pointer to the current debug string
|
inline |
Get the debug string buffer. Returns a pointer to the current debug string buffer which may then be modified directly
|
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 in TK_Thumbnail, TK_Dictionary_Locater, TK_Dictionary, TK_Tag, TK_Compression, TK_Comment, and TK_File_Info.
Referenced by TK_File_Info::Interpret(), TK_Comment::Interpret(), TK_Compression::Interpret(), TK_Tag::Interpret(), TK_Dictionary::Interpret(), TK_Dictionary_Locater::Interpret(), and TK_Thumbnail::Interpret().
|
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 in TK_Thumbnail, TK_Dictionary_Locater, TK_Dictionary, TK_Tag, TK_Compression, TK_Comment, and TK_File_Info.
void BBaseOpcodeHandler::LogDebug | ( | BStreamFileToolkit & | tk, |
char const * | string = 0 |
||
) |
write out any logging string (provided or previously recorded) and reset
|
inlinestaticprotected |
Examines a single unsigned character from the toolkit buffer (does not Get); returns result of function call.
|
virtual |
Determines whether a stored instance of an object is compatible with the current object, and if it is, prepares the object to write the instance instead.
|
inlinevirtual |
Allows the handler to specify if it needs the containing context to be reopened (currently only used for revisits on geometry references)
|
inline |
Determine if the object is set to request tagging
|
inline |
Returns the current opcode
|
inlineprotected |
Allows an object to access handlers defined for other objects
|
inline |
The toolkit makes multiple passes of objects which have LOD representations in the HOOPS database. This function returns the number of the pass which the toolkit is currently on.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
inlinestaticprotected |
Puts n characters from buffer b into the toolkit buffer; returns result of function call.
|
inlinestaticprotected |
Puts n short integers from buffer s into the toolkit buffer; returns result of function call.
References TK_Normal.
|
inlinestaticprotected |
Puts n integers from buffer i into the toolkit buffer; returns result of function call.
References TK_Normal.
|
inlinestaticprotected |
Puts n floats from buffer f into the toolkit buffer; returns result of function call.
References TK_Normal.
|
inlinestaticprotected |
Puts n doubles from buffer d into the toolkit buffer; returns result of function call.
References TK_Normal.
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
inlinestaticprotected |
|
protected |
This is a deprecated method.
|
inlineprotected |
Puts a the object's general flags into the toolkit buffer if appropriate; returns result of function call.
References BStreamFileToolkit::GetTargetVersion(), and TK_Normal.
|
inlineprotected |
Puts a the object's opcode into the toolkit buffer; returns result of function call.
References BStreamFileToolkit::GetLogging(), BStreamFileToolkit::NextOpcodeSequence(), and TK_Normal.
|
protected |
This is a deprecated method.
|
pure 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. |
Implemented in TK_External_Reference_Unicode, TK_External_Reference, TK_URL, TK_XML, TK_Material, TK_User_Data, TK_Complex_Clip_Region, TK_Clip_Region, TK_Clip_Rectangle, TK_Line_Style, TK_Named_Style_Def, TK_Glyph_Definition, TK_Thumbnail, TK_Texture, TK_Image, TK_Font, TK_Text, TK_Grid, TK_PolyCylinder, TK_Cylinder, TK_Sphere, TK_Ellipse, TK_Circle, TK_Cutting_Plane, TK_Spot_Light, TK_Area_Light, TK_NURBS_Surface, HT_NURBS_Trim, TK_NURBS_Curve, TK_Polypoint, TK_Line, TK_Point, TK_Bounding, TK_Text_Font, TK_Window, TK_Camera, TK_User_Value, TK_User_Index_Data, TK_User_Index, TK_Unicode_Options, TK_User_Options, TK_Conditional_Action, TK_Conditions, TK_Streaming, TK_Named, TK_Linear_Pattern, TK_Size, TK_Enumerated, TK_Matrix, TK_Selectability, TK_Visibility, TK_Geometry_Options, TK_Heuristics, TK_Rendering_Options, TK_Callback, TK_Color_Map, TK_Color_By_FIndex, TK_Color_By_Index, TK_Color_By_Value, TK_Color_RGB, TK_Color, TK_Dictionary_Locater, TK_Dictionary, TK_Tag, TK_Renumber, TK_Geometry_Attributes, TK_LOD, TK_Delete_Object, TK_Instance, TK_Reference, TK_Referenced_Segment, TK_Reopen_Segment, TK_Close_Segment, TK_Open_Segment, Lock_Masks, TK_Compression, TK_Terminator, TK_Comment, TK_Mesh, TK_File_Info, TK_Header, TK_Unavailable, TK_Default, TK_Shell, and TK_PolyPolypoint.
|
staticprotected |
Internal use: utility functions for conversion between float & string without dealing with locale issues
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
inlineprotected |
Allows us to later find objects which are a [transformed] copy of previous objects
|
inlineprotected |
Allows us to remember which segments have been processed (avoid multiple writes of inclusions)
|
protected |
This is a deprecated method.
|
protected |
This is a deprecated method.
|
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 in TK_External_Reference_Unicode, TK_External_Reference, TK_URL, TK_XML, TK_Material, TK_User_Data, TK_Complex_Clip_Region, TK_Clip_Region, TK_Clip_Rectangle, TK_Line_Style, TK_Named_Style_Def, TK_Glyph_Definition, TK_Thumbnail, TK_Texture, TK_Image, TK_Font, TK_Text, TK_PolyCylinder, TK_Sphere, TK_Circle, TK_Cutting_Plane, TK_Area_Light, TK_NURBS_Surface, TK_NURBS_Curve, TK_Polypoint, TK_Point, TK_Text_Font, TK_User_Index_Data, TK_User_Index, TK_Unicode_Options, TK_User_Options, TK_Conditional_Action, TK_Conditions, TK_Named, TK_Rendering_Options, TK_Callback, TK_Color_Map, TK_Color, TK_Dictionary_Locater, TK_Dictionary, TK_LOD, TK_Instance, TK_Reference, TK_Referenced_Segment, TK_Open_Segment, TK_Comment, TK_Mesh, TK_Header, TK_Shell, and TK_PolyPolypoint.
Referenced by TK_Point::Reset(), TK_Named::SetIndex(), TK_Sphere::TK_Sphere(), and TK_Texture::TK_Texture().
|
inlineprotected |
Indicates that an object requires further processing during a subsequent pass
|
inline |
Sets the current general flags
Referenced by TK_Bounding::TK_Bounding().
void BBaseOpcodeHandler::SetLoggingString | ( | char const * | segment | ) |
Set the debug string. Makes sure the buffer is big enough to hold the debug string, and copies it in
void BBaseOpcodeHandler::SetLoggingString | ( | int | length | ) |
Set the debug string. Makes sure the buffer is big enough to hold a string of 'length' characters
|
inline |
Sets whether the object requests tagging
|
protected |
This is a deprecated method.
|
inline |
Adds a Tag to the file for the current object, and also adds an entry to the toolkit's tag table which stores an association between the tag (also called an 'index') and the current object's HOOPS key
|
inline |
Provides a simple interface to check if this object requires tagging or the toolkit is set for Force_Tags.
References BStreamFileToolkit::GetWriteFlags(), and TK_Force_Tags.
|
inlineprotected |
sanity checking. for internal use only
|
pure 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. |
Implemented in TK_External_Reference_Unicode, TK_External_Reference, TK_URL, TK_XML, TK_Material, TK_User_Data, TK_Complex_Clip_Region, TK_Clip_Region, TK_Clip_Rectangle, TK_Line_Style, TK_Named_Style_Def, TK_Glyph_Definition, TK_Thumbnail, TK_Texture, TK_Image, TK_Font, TK_Text, TK_Grid, TK_PolyCylinder, TK_Cylinder, TK_Sphere, TK_Ellipse, TK_Circle, TK_Cutting_Plane, TK_Spot_Light, TK_Area_Light, TK_NURBS_Surface, HT_NURBS_Trim, TK_NURBS_Curve, TK_Polypoint, TK_Line, TK_Point, TK_Bounding, TK_Text_Font, TK_Window, TK_Camera, TK_User_Value, TK_User_Index_Data, TK_User_Index, TK_Unicode_Options, TK_User_Options, TK_Conditional_Action, TK_Conditions, TK_Streaming, TK_Named, TK_Linear_Pattern, TK_Size, TK_Enumerated, TK_Matrix, TK_Selectability, TK_Visibility, TK_Geometry_Options, TK_Heuristics, TK_Rendering_Options, TK_Callback, TK_Color_Map, TK_Color_By_FIndex, TK_Color_By_Index, TK_Color_By_Value, TK_Color_RGB, TK_Color, TK_Dictionary_Locater, TK_Dictionary, TK_Tag, TK_Renumber, TK_Geometry_Attributes, TK_LOD, TK_Delete_Object, TK_Instance, TK_Reference, TK_Referenced_Segment, TK_Reopen_Segment, TK_Close_Segment, TK_Open_Segment, Lock_Masks, TK_Compression, TK_Terminator, TK_Comment, TK_Mesh, TK_File_Info, TK_Header, TK_Unavailable, TK_Default, TK_Shell, and TK_PolyPolypoint.
|
protected |
Size of currently available debug string buffer
|
protected |
Length of debug string name
|
protected |
Debug String