Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

BBaseOpcodeHandler Class Reference

#include <BOpcodeHandler.h>

Inheritance diagram for BBaseOpcodeHandler:

Inheritance graph
[legend]
Collaboration diagram for BBaseOpcodeHandler:

Collaboration graph
[legend]
List of all members.

Detailed Description

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, excecution 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 primimtives.

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 encapsualetes this process. However, if BaseStream is used, the Interpret/Write process must be performed manually.)

Definition at line 71 of file BOpcodeHandler.h.

Public Member Functions

 BBaseOpcodeHandler (unsigned char op)
virtual void serialize (const void *pTag=NULL) throw ( DWFException )
virtual TK_Status Read (BStreamFileToolkit &tk) alter=0
virtual TK_Status Write (BStreamFileToolkit &tk) alter=0
virtual TK_Status Execute (BStreamFileToolkit &tk) alter
virtual TK_Status Interpret (BStreamFileToolkit &tk, ID_Key key, int variant=0) alter
virtual TK_Status Interpret (BStreamFileToolkit &tk, ID_Key key, char const *special) alter
virtual void Reset (void) alter
virtual bool Match_Instance (BStreamFileToolkit const &tk, Recorded_Instance alter *instance) alter
unsigned char Opcode (void) const
int Pass (BStreamFileToolkit &tk) const
TK_Status Tag (BStreamFileToolkit &tk, int variant=-1) const
bool Tagging (BStreamFileToolkit &tk) const
virtual TK_Status Clone (BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
void SetDebug (char const *segment) alter
void SetDebug (int length) alter
char const * GetDebug (void) const
char alter * GetDebug (void) alter
void LogDebug (BStreamFileToolkit &tk) alter

Protected Member Functions

TK_Status GetData (BStreamFileToolkit &tk, char *b, int n) alter
TK_Status GetData (BStreamFileToolkit &tk, short *s, int n) alter
TK_Status GetData (BStreamFileToolkit &tk, int *i, int n) alter
TK_Status GetData (BStreamFileToolkit &tk, float *f, int n) alter
TK_Status GetData (BStreamFileToolkit &tk, unsigned char *b, int n) alter
TK_Status GetData (BStreamFileToolkit &tk, unsigned short *s, int n) alter
TK_Status GetData (BStreamFileToolkit &tk, unsigned int *i, int n) alter
TK_Status GetData (BStreamFileToolkit &tk, char &c) alter
TK_Status GetData (BStreamFileToolkit &tk, short &s) alter
TK_Status GetData (BStreamFileToolkit &tk, int &i) alter
TK_Status GetData (BStreamFileToolkit &tk, unsigned char &b) alter
TK_Status GetData (BStreamFileToolkit &tk, unsigned short &s) alter
TK_Status GetData (BStreamFileToolkit &tk, unsigned int &i) alter
TK_Status GetData (BStreamFileToolkit &tk, float &f) alter
TK_Status LookatData (BStreamFileToolkit &tk, unsigned char &b) alter
TK_Status PutData (BStreamFileToolkit &tk, char const *b, int n) alter
TK_Status PutData (BStreamFileToolkit &tk, short const *s, int n) alter
TK_Status PutData (BStreamFileToolkit &tk, int const *i, int n) alter
TK_Status PutData (BStreamFileToolkit &tk, float const *f, int n) alter
TK_Status PutData (BStreamFileToolkit &tk, unsigned char const *b, int n) alter
TK_Status PutData (BStreamFileToolkit &tk, unsigned short const *s, int n) alter
TK_Status PutData (BStreamFileToolkit &tk, unsigned int const *i, int n) alter
TK_Status PutData (BStreamFileToolkit &tk, char const &c) alter
TK_Status PutData (BStreamFileToolkit &tk, short const &s) alter
TK_Status PutData (BStreamFileToolkit &tk, int const &i) alter
TK_Status PutData (BStreamFileToolkit &tk, unsigned char const &b) alter
TK_Status PutData (BStreamFileToolkit &tk, unsigned short const &s) alter
TK_Status PutData (BStreamFileToolkit &tk, unsigned int const &i) alter
TK_Status PutData (BStreamFileToolkit &tk, float const &f) alter
TK_Status PutOpcode (BStreamFileToolkit &tk, int adjust=1) alter
short flip (short s)
 for internal use only
int flip (int i)
 for internal use only
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_out (float *f, int n)
 for internal use only
void log_opcode (BStreamFileToolkit &tk, unsigned int sequence, unsigned char opcode) alter
 for internal use only
void floats_to_bytes (float const *in, unsigned char alter *out, int count) const
 for internal use only
void bytes_to_floats (unsigned char const *in, float alter *out, int count) const
 for internal use only
void add_segment (BStreamFileToolkit &tk, ID_Key key) alter
 for internal use only
ID_Key remove_segment (BStreamFileToolkit &tk) alter
 for internal use only
void set_last_key (BStreamFileToolkit &tk, ID_Key key) alter
 sets the given key as "most recent" on the toolkit for the purposes of associating keys with indices
ID_Key last_key (BStreamFileToolkit &tk) const
 obsolete
void adjust_written (BStreamFileToolkit &tk, int count) alter
 for internal use only
void increase_nesting (BStreamFileToolkit &tk, int amount=1) alter
 for internal use only
void decrease_nesting (BStreamFileToolkit &tk, int amount=1) alter
 for internal use only
void Revisit (BStreamFileToolkit &tk, float priority=0.0f, int variant=0) const
BBaseOpcodeHandler alter * Opcode_Handler (BStreamFileToolkit &tk, unsigned char op) const
void Record_Instance (BStreamFileToolkit &tk, ID_Key key, int variant, int val1, int val2, int val3) const
bool Find_Instance (BStreamFileToolkit &tk, int val1, int val2, int val3) alter
void Remember_Segment (BStreamFileToolkit &tk, ID_Key key) const
bool Find_Segment (BStreamFileToolkit &tk, ID_Key key) const
bool validate_count (int count, int limit=1<< 24) const

Protected Attributes

int m_stage
 The writing stage.
int m_progress
 Tracks the amount of data that has been read/written so far.
unsigned char m_opcode
 The opcode being handled by this particular object.
int m_debug_length
int m_debug_allocated
char * m_debug_string


Constructor & Destructor Documentation

BBaseOpcodeHandler::BBaseOpcodeHandler unsigned char  op  )  [inline]
 

Default constructor for an BBaseOpcodeHandler object

Parameters:
op Character 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.

Definition at line 90 of file BOpcodeHandler.h.


Member Function Documentation

virtual TK_Status BBaseOpcodeHandler::Clone BStreamFileToolkit tk,
BBaseOpcodeHandler **  handler
const [inline, virtual]
 

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.

Definition at line 191 of file BOpcodeHandler.h.

virtual TK_Status BBaseOpcodeHandler::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:
tk A reference to the BStreamFileToolkit object.
Returns:
The result of the function call.

Reimplemented in TK_File_Info, TK_Comment, TK_Terminator, TK_Compression, TK_Tag, TK_Dictionary, TK_User_Data, TK_XML, TK_External_Reference, and TK_PolyPolypoint.

bool BBaseOpcodeHandler::Find_Instance BStreamFileToolkit tk,
int  val1,
int  val2,
int  val3
[inline, protected]
 

Searches for objects which are a [transformed] copy of previous objects

Definition at line 531 of file BOpcodeHandler.h.

bool BBaseOpcodeHandler::Find_Segment BStreamFileToolkit tk,
ID_Key  key
const [inline, protected]
 

Determines if a segment has already been processed (avoid multiple writes of inclusions)

Definition at line 538 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::GetData BStreamFileToolkit tk,
float &  f
[inline, protected]
 

Gets a single float from the toolkit buffer; returns result of function call.

Definition at line 279 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::GetData BStreamFileToolkit tk,
unsigned int &  i
[inline, protected]
 

Gets a single unsigned integer from the toolkit buffer; returns result of function call.

Definition at line 276 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::GetData BStreamFileToolkit tk,
unsigned short &  s
[inline, protected]
 

Gets a single unsigned short integer from the toolkit buffer; returns result of function call.

Definition at line 273 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::GetData BStreamFileToolkit tk,
unsigned char &  b
[inline, protected]
 

Gets a single unsigned character from the toolkit buffer; returns result of function call.

Definition at line 270 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::GetData BStreamFileToolkit tk,
int &  i
[inline, protected]
 

Gets a single integer from the toolkit buffer; returns result of function call.

Definition at line 267 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::GetData BStreamFileToolkit tk,
short &  s
[inline, protected]
 

Gets a single short integer from the toolkit buffer; returns result of function call.

Definition at line 264 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::GetData BStreamFileToolkit tk,
char &  c
[inline, protected]
 

Gets a single characters from the toolkit buffer; returns result of function call.

Definition at line 261 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::GetData BStreamFileToolkit tk,
unsigned int *  i,
int  n
[inline, protected]
 

Gets n unsigned integers from the toolkit buffer and writes them into buffer i; returns result of function call.

Definition at line 258 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::GetData BStreamFileToolkit tk,
unsigned short *  s,
int  n
[inline, protected]
 

Gets n unsigned shorts from the toolkit buffer and writes them into buffer s; returns result of function call.

Definition at line 255 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::GetData BStreamFileToolkit tk,
unsigned char *  b,
int  n
[inline, protected]
 

Gets n unsigned characters from the toolkit buffer and writes them into buffer b; returns result of function call.

Definition at line 252 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::GetData BStreamFileToolkit tk,
float *  f,
int  n
[inline, protected]
 

Gets n floats from the toolkit buffer and writes them into buffer f; returns result of function call.

Definition at line 244 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::GetData BStreamFileToolkit tk,
int *  i,
int  n
[inline, protected]
 

Gets n integers from the toolkit buffer and writes them into buffer i; returns result of function call.

Definition at line 236 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::GetData BStreamFileToolkit tk,
short *  s,
int  n
[inline, protected]
 

Gets n short integers from the toolkit buffer and writes them into buffer s; returns result of function call.

Definition at line 228 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::GetData BStreamFileToolkit tk,
char *  b,
int  n
[inline, protected]
 

Gets n characters from the toolkit buffer and writes them into buffer b; returns result of function call.

Definition at line 225 of file BOpcodeHandler.h.

char alter* BBaseOpcodeHandler::GetDebug void   )  [inline]
 

Get the debug string buffer. Returns a pointer to the current debug string buffer which may then be modified directly

Definition at line 213 of file BOpcodeHandler.h.

char const* BBaseOpcodeHandler::GetDebug void   )  const [inline]
 

Get the debug string. Returns a pointer to the current debug string

Reimplemented in TK_Rendering_Options.

Definition at line 208 of file BOpcodeHandler.h.

virtual TK_Status BBaseOpcodeHandler::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:
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
Returns:
The result of the function call.

Reimplemented in TK_File_Info, TK_Compression, TK_Tag, and TK_Dictionary.

virtual TK_Status BBaseOpcodeHandler::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.

Parameters:
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
Returns:
The result of the function call.

Reimplemented in TK_File_Info, TK_Comment, TK_Compression, TK_Tag, and TK_Dictionary.

void BBaseOpcodeHandler::LogDebug BStreamFileToolkit tk  ) 
 

write out any debug string and reset

TK_Status BBaseOpcodeHandler::LookatData BStreamFileToolkit tk,
unsigned char &  b
[inline, protected]
 

Examines a single unsigned character from the toolkit buffer (does not Get); returns result of function call.

Definition at line 282 of file BOpcodeHandler.h.

virtual bool BBaseOpcodeHandler::Match_Instance BStreamFileToolkit const &  tk,
Recorded_Instance alter *  instance
[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.

unsigned char BBaseOpcodeHandler::Opcode void   )  const [inline]
 

Returns the current opcode

Definition at line 166 of file BOpcodeHandler.h.

BBaseOpcodeHandler alter* BBaseOpcodeHandler::Opcode_Handler BStreamFileToolkit tk,
unsigned char  op
const [inline, protected]
 

Allows an object to access handlers defined for other objects

Definition at line 522 of file BOpcodeHandler.h.

int BBaseOpcodeHandler::Pass BStreamFileToolkit tk  )  const [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.

Definition at line 172 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::PutData BStreamFileToolkit tk,
float const &  f
[inline, protected]
 

Puts a single float f into the toolkit buffer; returns result of function call.

Definition at line 377 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::PutData BStreamFileToolkit tk,
unsigned int const &  i
[inline, protected]
 

Puts a single unsigned integer i into the toolkit buffer; returns result of function call.

Definition at line 374 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::PutData BStreamFileToolkit tk,
unsigned short const &  s
[inline, protected]
 

Puts a single unsigned short s into the toolkit buffer; returns result of function call.

Definition at line 371 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::PutData BStreamFileToolkit tk,
unsigned char const &  b
[inline, protected]
 

Puts a single unsigned character b into the toolkit buffer; returns result of function call.

Definition at line 368 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::PutData BStreamFileToolkit tk,
int const &  i
[inline, protected]
 

Puts a single integer i into the toolkit buffer; returns result of function call.

Definition at line 365 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::PutData BStreamFileToolkit tk,
short const &  s
[inline, protected]
 

Puts a single short integer s into the toolkit buffer; returns result of function call.

Definition at line 362 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::PutData BStreamFileToolkit tk,
char const &  c
[inline, protected]
 

Puts a single character c into the toolkit buffer; returns result of function call.

Definition at line 359 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::PutData BStreamFileToolkit tk,
unsigned int const *  i,
int  n
[inline, protected]
 

Puts n unsigned integers from buffer i into the toolkit buffer; returns result of function call.

Definition at line 356 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::PutData BStreamFileToolkit tk,
unsigned short const *  s,
int  n
[inline, protected]
 

Puts n unsigned short integers from buffer s into the toolkit buffer; returns result of function call.

Definition at line 353 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::PutData BStreamFileToolkit tk,
unsigned char const *  b,
int  n
[inline, protected]
 

Puts n unsigned characters from buffer b into the toolkit buffer; returns result of function call.

Definition at line 350 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::PutData BStreamFileToolkit tk,
float const *  f,
int  n
[inline, protected]
 

Puts n floats from buffer f into the toolkit buffer; returns result of function call.

Definition at line 329 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::PutData BStreamFileToolkit tk,
int const *  i,
int  n
[inline, protected]
 

Puts n integers from buffer i into the toolkit buffer; returns result of function call.

Definition at line 310 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::PutData BStreamFileToolkit tk,
short const *  s,
int  n
[inline, protected]
 

Puts n short integers from buffer s into the toolkit buffer; returns result of function call.

Definition at line 291 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::PutData BStreamFileToolkit tk,
char const *  b,
int  n
[inline, protected]
 

Puts n characters from buffer b into the toolkit buffer; returns result of function call.

Definition at line 288 of file BOpcodeHandler.h.

TK_Status BBaseOpcodeHandler::PutOpcode BStreamFileToolkit tk,
int  adjust = 1
[inline, protected]
 

Puts a the object's opcode into the toolkit buffer; returns result of function call.

Definition at line 380 of file BOpcodeHandler.h.

virtual TK_Status BBaseOpcodeHandler::Read BStreamFileToolkit tk  )  [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.

Parameters:
tk A reference to the BStreamFileToolkit object.
Returns:
The result of the function call.

Implemented in TK_Default, TK_Unavailable, TK_Header, TK_File_Info, TK_Comment, TK_Terminator, TK_Compression, TK_Open_Segment, TK_Close_Segment, TK_Reopen_Segment, TK_Referenced_Segment, TK_Instance, TK_LOD, TK_Renumber, TK_Tag, TK_Dictionary, TK_Color, TK_Color_RGB, TK_Color_By_Value, TK_Color_By_Index, TK_Color_By_FIndex, TK_Color_Map, TK_Callback, TK_Rendering_Options, TK_Heuristics, TK_Visibility, TK_Selectability, TK_Matrix, TK_Enumerated, TK_Size, TK_Linear_Pattern, TK_Streaming, TK_User_Options, TK_Unicode_Options, TK_User_Index, TK_User_Value, TK_Camera, TK_Window, TK_Text_Font, TK_Bounding, TK_Point, TK_Line, TK_Polypoint, TK_NURBS_Curve, HT_NURBS_Trim, TK_NURBS_Surface, TK_Area_Light, TK_Spot_Light, TK_Cutting_Plane, TK_Circle, TK_Ellipse, TK_Cylinder, TK_PolyCylinder, TK_Grid, TK_Text, TK_Font, TK_Image, TK_Texture, TK_Clip_Rectangle, TK_Clip_Region, TK_User_Data, TK_XML, TK_URL, TK_External_Reference, W3D_Image, TK_Shell, TK_Mesh, and TK_PolyPolypoint.

void BBaseOpcodeHandler::Record_Instance BStreamFileToolkit tk,
ID_Key  key,
int  variant,
int  val1,
int  val2,
int  val3
const [inline, protected]
 

Allows us to later find objects which are a [transformed] copy of previous objects

Definition at line 526 of file BOpcodeHandler.h.

void BBaseOpcodeHandler::Remember_Segment BStreamFileToolkit tk,
ID_Key  key
const [inline, protected]
 

Allows us to remember which segments have been processed (avoid multiple writes of inclusions)

Definition at line 536 of file BOpcodeHandler.h.

virtual void BBaseOpcodeHandler::Reset void   )  [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_Header, TK_Comment, TK_Open_Segment, TK_Referenced_Segment, TK_Instance, TK_LOD, TK_Dictionary, TK_Color, TK_Callback, TK_Rendering_Options, TK_User_Options, TK_Unicode_Options, TK_User_Index, TK_Text_Font, TK_Polypoint, TK_NURBS_Curve, TK_NURBS_Surface, TK_Area_Light, TK_PolyCylinder, TK_Text, TK_Font, TK_Image, TK_Texture, TK_Clip_Rectangle, TK_Clip_Region, TK_User_Data, TK_XML, TK_URL, TK_External_Reference, W3D_Image, TK_Shell, TK_Mesh, and TK_PolyPolypoint.

void BBaseOpcodeHandler::Revisit BStreamFileToolkit tk,
float  priority = 0.0f,
int  variant = 0
const [inline, protected]
 

Indicates that an object requires further processing during a subsequent pass

Definition at line 517 of file BOpcodeHandler.h.

virtual void BBaseOpcodeHandler::serialize const void *  pTag = NULL  )  throw ( DWFException ) [virtual]
 

This method will write the handler's opcode and data to the W3D stream.

Parameters:
pTag An optional tag to associate the data.
Exceptions:
DWFException 

Implements W3DOpcodeHandler.

Reimplemented in TK_Shell.

void BBaseOpcodeHandler::SetDebug int  length  ) 
 

Set the debug string. Makes sure the buffer is big enough to hold a string of 'length' characters

Reimplemented in TK_Rendering_Options.

void BBaseOpcodeHandler::SetDebug char const *  segment  ) 
 

Set the debug string. Makes sure the buffer is big enough to hold thedebug string, and copies it in

TK_Status BBaseOpcodeHandler::Tag BStreamFileToolkit tk,
int  variant = -1
const [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

Definition at line 178 of file BOpcodeHandler.h.

bool BBaseOpcodeHandler::Tagging BStreamFileToolkit tk  )  const [inline]
 

Provides a simple interface to check if the toolkit is set for Force_Tags.

Definition at line 183 of file BOpcodeHandler.h.

bool BBaseOpcodeHandler::validate_count int  count  )  const [inline, protected]
 

sanity checking. for internal use only

Definition at line 541 of file BOpcodeHandler.h.

virtual TK_Status BBaseOpcodeHandler::Write BStreamFileToolkit tk  )  [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.

Parameters:
tk A reference to the BStreamFileToolkit object.
Returns:
The result of the function call.

Implemented in TK_Default, TK_Unavailable, TK_Header, TK_File_Info, TK_Comment, TK_Terminator, TK_Compression, TK_Open_Segment, TK_Close_Segment, TK_Reopen_Segment, TK_Referenced_Segment, TK_Instance, TK_LOD, TK_Renumber, TK_Tag, TK_Dictionary, TK_Color, TK_Color_RGB, TK_Color_By_Value, TK_Color_By_Index, TK_Color_By_FIndex, TK_Color_Map, TK_Callback, TK_Rendering_Options, TK_Heuristics, TK_Visibility, TK_Selectability, TK_Matrix, TK_Enumerated, TK_Size, TK_Linear_Pattern, TK_Streaming, TK_User_Options, TK_Unicode_Options, TK_User_Index, TK_User_Value, TK_Camera, TK_Window, TK_Text_Font, TK_Bounding, TK_Point, TK_Line, TK_Polypoint, TK_NURBS_Curve, HT_NURBS_Trim, TK_NURBS_Surface, TK_Area_Light, TK_Spot_Light, TK_Cutting_Plane, TK_Circle, TK_Ellipse, TK_Cylinder, TK_PolyCylinder, TK_Grid, TK_Text, TK_Font, TK_Image, TK_Texture, TK_Clip_Rectangle, TK_Clip_Region, TK_User_Data, TK_XML, TK_URL, TK_External_Reference, W3D_Image, TK_Shell, TK_Mesh, and TK_PolyPolypoint.


Member Data Documentation

int BBaseOpcodeHandler::m_debug_allocated [protected]
 

Size of currently available frbug string buffer

Definition at line 80 of file BOpcodeHandler.h.

int BBaseOpcodeHandler::m_debug_length [protected]
 

Length of debug string name

Definition at line 79 of file BOpcodeHandler.h.

char* BBaseOpcodeHandler::m_debug_string [protected]
 

Debug String

Definition at line 81 of file BOpcodeHandler.h.


The documentation for this class was generated from the following file:
Generated on Tue May 17 12:06:03 2005 for Autodesk DWF 3D Toolkit by  doxygen 1.4.1