18 #ifndef BBINFILETK_TOOLKIT
19 #include "BStreamFileToolkit.h"
127 TK_Status SetPoints (
int point_count,
float const * points = 0)
alter;
135 TK_Status SetLengths (
int primitive_count,
int const * lengths = 0) alter;
140 TKPP_COMPRESSED = 0x0001,
141 TKPP_HAS_EXPLICIT_PRIMITIVE_COUNT = 0x0002,
142 TKPP_ONE_PRIMITIVE_ONLY = 0x0004,
143 TKPP_GLOBAL_QUANTIZATION = 0x0008,
145 TKPP_ZERO_X = 0x0100,
146 TKPP_SAME_X = 0x0200,
147 TKPP_PER_PRIMITIVE_X = 0x0300,
148 TKPP_ZERO_Y = 0x0400,
149 TKPP_SAME_Y = 0x0800,
150 TKPP_PER_PRIMITIVE_Y = 0x0C00,
151 TKPP_ZERO_Z = 0x1000,
152 TKPP_SAME_Z = 0x2000,
153 TKPP_PER_PRIMITIVE_Z = 0x3000,
154 TKPP_EXPANDED = 0x8000
156 #define TKPP_X_2D_MASK 0x0300
157 #define TKPP_Y_2D_MASK 0x0C00
158 #define TKPP_Z_2D_MASK 0x3000
159 #define TKPP_ANY_2D_MASK 0x3F00
160 #define TKPP_EXPLICIT_PRIMITIVE_MASK 0x0006
int m_lengths_allocated
The number of array elements that we have allocated for primitive lengths.
Definition: BPolyPoly.h:50
int m_substage
tracks progress during helper functions
Definition: BPolyPoly.h:61
float * m_points
The points array.
Definition: BPolyPoly.h:46
#define alter
complementary to const, indicates we thought about it instead of a forgotten "const" ...
Definition: BStream.h:225
int m_templen
the length of all stragglers left behind (e.g. an array of floats of length m_primitive_count if TKPP...
Definition: BPolyPoly.h:53
int m_points_num_dimensions
The number of unrestricted dimensions in the points array that must be completely specified...
Definition: BPolyPoly.h:48
unsigned char m_compression_scheme
If the TKPP_COMPRESSED bit is set in m_subop, this variable tracks the specific compression algorithm...
Definition: BPolyPoly.h:56
virtual TK_Status Read(BStreamFileToolkit &tk) alter=0
virtual TK_Status Execute(BStreamFileToolkit &tk) alter
int m_points_num_floats
The number of independent floating point values required to specify the points array (equals m_point_...
Definition: BPolyPoly.h:47
unsigned char * m_workspace
Raw data after packing.
Definition: BPolyPoly.h:57
int m_progress
tracks progress during special situations
Definition: BPolyPoly.h:62
int m_points_allocated
The number of points for which we have allocated space (to save time, we only reallocate the points a...
Definition: BPolyPoly.h:45
unsigned short m_subop
Suboptions. Among other things, it specifies all 2d restrictions that can be made on the points...
Definition: BPolyPoly.h:55
int m_workspace_used
The amount of workspace area used.
Definition: BPolyPoly.h:58
The BBaseOpcodeHandler abstract class is used as a base for derived classes which manage logical piec...
Definition: BOpcodeHandler.h:60
TK_Status
Codes which can be either passed to various toolkit functions, or indicate the result of a toolkit fu...
Definition: BStream.h:237
int * m_lengths
The length of each primitive.
Definition: BPolyPoly.h:51
virtual void Reset() alter
int m_point_count
The number of points.
Definition: BPolyPoly.h:44
virtual TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Definition: BOpcodeHandler.h:199
int m_primitive_count
The number of primitives. Omitted from read/write (it can be deduced from the lengths array) unless T...
Definition: BPolyPoly.h:49
int m_bits_per_sample
the number of bits per sample. Should be tk.GetNumVertexBits()/3
Definition: BPolyPoly.h:60
int m_workspace_allocated
The amount of workspace area allocated.
Definition: BPolyPoly.h:59
virtual TK_Status Write(BStreamFileToolkit &tk) alter=0
Handles the TKE_PolyPolyline opcode.
Definition: BPolyPoly.h:42
Suboptions
Definition: BPolyPoly.h:139