Alphabetical Class Index   Class Hierarchy   Compound Members   File Members   File List  

TK_Referenced_Segment Class Reference

Handles the TKE_Inlude_Segment TKE_Named_Style and TKE_Style_Segment opcodes. More...

#include <BOpcodeHandler.h>

List of all members.

Public Member Functions

TK_Status Clone (BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
char const * GetCondition () const
char * GetCondition ()
bool GetFollow ()
char const * GetSegment () const
char * GetSegment ()
TK_Status Read (BStreamFileToolkit &tk)
TK_Status ReadAscii (BStreamFileToolkit &tk)
 Deprecated.
void Reset ()
void SetCondition (char const *condition)
void SetCondition (int length)
void SetFollow (bool f)
void SetSegment (char const *segment)
void SetSegment (int length)
 TK_Referenced_Segment (unsigned char opcode)
TK_Status Write (BStreamFileToolkit &tk)
TK_Status WriteAscii (BStreamFileToolkit &tk)
 Deprecated.

Protected Member Functions

void set_segment (char const *segment)
 for internal use only
void set_segment (int length)
 for internal use only

Protected Attributes

int m_allocated
int m_cond_allocated
int m_cond_length
char * m_condition
Lock_Masks m_filter
 for internal use only
bool m_follow
 for internal use only
ID_Key m_key
 for internal use only
int m_length
BBaseOpcodeHandlerm_referee
 for internal use only
ID_Key m_renumbered_key
 for internal use only
unsigned char m_renumbered_scope
 for internal use only
char * m_string

Detailed Description

Handles the TKE_Inlude_Segment TKE_Named_Style and TKE_Style_Segment opcodes.

TK_Referenced_Segment provides support for writing/reading the TKE_Inlude_Segment TKE_Named_Style and TKE_Style_Segment opcode objects to/from an HSF file.

The HOOPS/3dGS scene-graph nodes are called 'segments' which store, geometry, attributes, and subsegments. The scene-graph provides support for referencing segments where they can either be 'included' as virtual subsegments, or they can be 'styled' so that only the attributes are referenced.


Constructor & Destructor Documentation

TK_Referenced_Segment::TK_Referenced_Segment ( unsigned char  opcode)

constructor


Member Function Documentation

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

Reimplemented in HTK_Referenced_Segment.

char const* TK_Referenced_Segment::GetCondition ( ) const [inline]

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

char* TK_Referenced_Segment::GetCondition ( ) [inline]

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

bool TK_Referenced_Segment::GetFollow ( ) [inline]

Returns the flag indicating whether the reference segment should be processed itself

char const* TK_Referenced_Segment::GetSegment ( ) const [inline]

Get the segment name. Returns a pointer to the current segment name

char* TK_Referenced_Segment::GetSegment ( ) [inline]

Get the segment name buffer. Returns a pointer to the current segment name buffer which may then be modified directly

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

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

Implements BBaseOpcodeHandler.

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

Reimplemented in HTK_Referenced_Segment.

void TK_Referenced_Segment::SetCondition ( char const *  condition)

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

void TK_Referenced_Segment::SetCondition ( int  length)

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

void TK_Referenced_Segment::SetFollow ( bool  f) [inline]

Sets the flag indicating whether the reference segment should be processed itself

void TK_Referenced_Segment::SetSegment ( char const *  segment) [inline]

Set the segment name. Makes sure the buffer is big enough to hold the segment name, and copies it in

void TK_Referenced_Segment::SetSegment ( int  length) [inline]

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

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

Reimplemented in HTK_Referenced_Segment.


Member Data Documentation

Size of currently available string buffer. for internal use only

Size of currently available condition buffer. for internal use only

Length of condition. for internal use only

Condition. for internal use only

Length of segment string name. for internal use only

Segment name. for internal use only


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