Alphabetical Class Index   Class Hierarchy   Compound Members   File Members   File List  

BOpcodeHandler.h
Go to the documentation of this file.
1 //
2 // Copyright (c) 2000 by Tech Soft 3D, LLC.
3 // The information contained herein is confidential and proprietary to
4 // Tech Soft 3D, LLC., and considered a trade secret as defined under
5 // civil and criminal statutes. Tech Soft 3D shall pursue its civil
6 // and criminal remedies in the event of unauthorized use or misappropriation
7 // of its trade secrets. Use of this information by anyone other than
8 // authorized employees of Tech Soft 3D, LLC. is granted only under a
9 // written non-disclosure agreement, expressly prescribing the scope and
10 // manner of such use.
11 //
12 
13 // $Id: 7d962f161b7936ce058865c01ae0b8ce85f171e7 $
14 
15 //
16 
17 #ifndef BOPCODE_HANDLER
18 #define BOPCODE_HANDLER
19 
20 #ifndef BBINFILETK_TOOLKIT
21  #include "BStreamFileToolkit.h"
22 #endif
23 
24 #ifndef POINTER_SIZED_INT
25 #if defined(WIN64) || defined(_M_X64) || defined(_WIN64)
26 # define POINTER_SIZED_INT __int64
27 # define POINTER_SIZED_UINT unsigned __int64
28 #else
29 # define POINTER_SIZED_INT long
30 # define POINTER_SIZED_UINT unsigned long
31 #endif
32 #endif
33 
34 
36 
39 
60 class BBINFILETK_API2 BBaseOpcodeHandler : public BControlledMemoryObject {
61  protected:
62  int m_stage;
63  int m_progress;
64  unsigned char m_opcode;
65  bool m_needs_tag;
66 
69  char * m_debug_string;
71  char * m_ascii_buffer;
72  int m_ascii_size;
73  int m_ascii_length;
74 
75  int m_ascii_stage;
77 
78  unsigned char m_byte;
79  unsigned short m_unsigned_short;
80  int m_int;
81  char m_char;
82 
83  public:
90  : m_stage (0), m_progress (0), m_opcode ((unsigned char)op), m_needs_tag (false),
91  m_debug_length (0), m_debug_allocated (0), m_debug_string (0),
92 
93  m_ascii_buffer (0), m_ascii_size (0), m_ascii_length (0), m_ascii_stage (0), m_ascii_progress(0),
94  m_byte(0), m_unsigned_short(0), m_int(0), m_char('\0')
95  {}
96  virtual ~BBaseOpcodeHandler ();
97 
105  virtual TK_Status Read (BStreamFileToolkit & tk) alter = 0;
106 
114  virtual TK_Status Write (BStreamFileToolkit & tk) alter = 0;
115 
123  virtual TK_Status Execute (BStreamFileToolkit & tk) alter;
124 
134  virtual TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant = 0) alter;
135 
145  virtual TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special) alter;
146 
152  virtual void Reset () alter;
153 
158  virtual bool Match_Instance (BStreamFileToolkit const & tk, Recorded_Instance alter * instance) alter;
159 
160 
162  unsigned char Opcode () const { return m_opcode; }
163 
168  int Pass (BStreamFileToolkit & tk) const { return tk.pass(); }
169 
174  TK_Status Tag (BStreamFileToolkit & tk, int variant= -1) const { return tk.tag(variant); }
175 
179  bool Tagging (BStreamFileToolkit & tk) const {
180  return m_needs_tag || tk.GetWriteFlags(TK_Force_Tags) != 0;
181  }
182 
186  void SetNeedsTag (bool n) alter { m_needs_tag = n; }
187 
191  bool NeedsTag () const { return m_needs_tag; }
192 
199  virtual TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const {
200  *handler = 0;
201  return tk.Error();
202  }
203 
209  virtual bool NeedsContext (BStreamFileToolkit & tk) const { (void)tk; return false; }
210 
215  void SetLoggingString (char const * segment) alter;
216 
221  void SetLoggingString (int length) alter;
222 
226  char const * GetLoggingString () const { return m_debug_string; }
231  char alter * GetLoggingString () alter { return m_debug_string; }
232 
236  void LogDebug (BStreamFileToolkit & tk, char const * string = 0) alter;
237 
238  protected:
239  // various means of pulling data from the toolkit buffer
240  // Note: format conversion is safe to do in output buffer
241 
243  TK_Status GetData (BStreamFileToolkit & tk, char * b, int n) alter { return tk.read (b, n); }
244 
246  TK_Status GetData (BStreamFileToolkit & tk, short * s, int n) alter {
247  TK_Status status;
248  if ((status = GetData (tk, (char *)s, n * (int)sizeof (short))) == TK_Normal)
249  fix (s, n);
250  return status;
251  }
252 
254  TK_Status GetData (BStreamFileToolkit & tk, int * i, int n) alter {
255  TK_Status status;
256  if ((status = GetData (tk, (char *)i, n * (int)sizeof (int))) == TK_Normal)
257  fix (i, n);
258  return status;
259  }
260 
262  TK_Status GetData (BStreamFileToolkit & tk, float * f, int n) alter {
263  TK_Status status;
264  if ((status = GetData (tk, (char *)f, n * (int)sizeof (float))) == TK_Normal)
265  fix_in (f, n);
266  return status;
267  }
268 
270  TK_Status GetData (BStreamFileToolkit & tk, unsigned char * b, int n) alter { return GetData (tk, (char *)b, n); }
271 
273  TK_Status GetData (BStreamFileToolkit & tk, unsigned short * s, int n) alter { return GetData (tk, (short *)s, n); }
274 
276  TK_Status GetData (BStreamFileToolkit & tk, unsigned int * i, int n) alter { return GetData (tk, (int *)i, n); }
277 
279  TK_Status GetData (BStreamFileToolkit & tk, char & c) alter { return GetData (tk, &c, 1); }
280 
282  TK_Status GetData (BStreamFileToolkit & tk, short & s) alter { return GetData (tk, &s, 1); }
283 
285  TK_Status GetData (BStreamFileToolkit & tk, int & i) alter { return GetData (tk, &i, 1); }
286 
288  TK_Status GetData (BStreamFileToolkit & tk, unsigned char & b) alter { return GetData (tk, &b, 1); }
289 
291  TK_Status GetData (BStreamFileToolkit & tk, unsigned short & s) alter { return GetData (tk, &s, 1); }
292 
294  TK_Status GetData (BStreamFileToolkit & tk, unsigned int & i) alter { return GetData (tk, &i, 1); }
295 
297  TK_Status GetData (BStreamFileToolkit & tk, float & f) alter { return GetData (tk, &f, 1); }
298 
300  TK_Status SkipNewlineAndTabs(BStreamFileToolkit & tk, unsigned int* readSize=0) alter;
302  TK_Status ReadAsciiLine(BStreamFileToolkit & tk, unsigned int* readSize=0) alter;
304  TK_Status ReadAsciiWord(BStreamFileToolkit & tk, unsigned int* readSize=0) alter;
306  TK_Status ReadEndOpcode(BStreamFileToolkit & tk) alter;
308  bool RemoveAngularBrackets(char* string) alter;
310  bool RemoveQuotes(char* string) alter;
311 
313  TK_Status Read_Referenced_Segment(BStreamFileToolkit & tk, int &i_progress) alter;
314 
315  //TK_Status GetAsciiData(BStreamFileToolkit & tk, float * rFloats, unsigned int n) alter;
316 
318  TK_Status GetAsciiData(BStreamFileToolkit & tk, int * rInts, unsigned int n) alter;
319  //TK_Status GetAsciiData(BStreamFileToolkit & tk, short * rShorts, unsigned int n) alter;
320 
322  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, unsigned char& value)alter;
324  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, char& value)alter;
326  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, unsigned short& value)alter;
328  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, short& value)alter;
330  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, int& value)alter;
332  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, float& value)alter;
334  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, float * rFloats, unsigned int n) alter;
336  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, char * m_string, unsigned int n) alter;
338  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, unsigned char * m_string, unsigned int n) alter;
340  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, int * rInts, unsigned int n) alter;
342  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, short * rShorts, unsigned int n) alter;
344  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, unsigned short * rShorts, unsigned int n) alter;
346  TK_Status GetAsciiHex(BStreamFileToolkit & tk, const char * tag, unsigned char &value) alter;
348  TK_Status GetAsciiHex(BStreamFileToolkit & tk, const char * tag, int &value) alter;
350  TK_Status GetAsciiHex(BStreamFileToolkit & tk, const char * tag, char &value) alter;
352  TK_Status GetAsciiHex(BStreamFileToolkit & tk, const char * tag, unsigned short &value) alter;
354  TK_Status GetAsciiImageData(BStreamFileToolkit & tk, const char * tag, unsigned char * rValues, unsigned int n) alter;
355 
357  TK_Status LookatData (BStreamFileToolkit & tk, unsigned char & b) alter { return tk.lookat ((char &)b); }
358 
359  // various means of putting data into the toolkit buffer
360  // Note: format conversion is NOT safe in input buffer -- use temps
361 
363  TK_Status PutData (BStreamFileToolkit & tk, char const * b, int n) alter { return tk.write (b, n); }
364 
366  TK_Status PutData (BStreamFileToolkit & tk, short const * s, int n) alter {
367  #ifdef STREAM_BIGENDIAN
368  short * buffer = new short [n];
369  short * tmp = buffer;
370  TK_Status status;
371  int i;
372  for (i=0; i<n; ++i)
373  *tmp++ = flip (*s++);
374  status = PutData (tk, (char const *)buffer, n * (int)sizeof (short));
375  delete [] buffer;
376  if (status != TK_Normal)
377  return status;
378  return TK_Normal;
379  #else
380  return PutData (tk, (char const *)s, n * (int)sizeof (short));
381  #endif
382  }
383 
385  TK_Status PutData (BStreamFileToolkit & tk, int const * i, int n) alter {
386  #ifdef STREAM_BIGENDIAN
387  int * buffer = new int [n];
388  int * tmp = buffer;
389  TK_Status status;
390  int j;
391  for (j=0; j<n; ++j)
392  *tmp++ = flip (*i++);
393  status = PutData (tk, (char const *)buffer, n * (int)sizeof (int));
394  delete [] buffer;
395  if (status != TK_Normal)
396  return status;
397  return TK_Normal;
398  #else
399  return PutData (tk, (char const *)i, n * (int)sizeof (int));
400  #endif
401  }
402 
404  TK_Status PutData (BStreamFileToolkit & tk, float const * f, int n) alter {
405  #if defined(NON_IEEE) || defined(STREAM_BIGENDIAN)
406  float * buffer = new float [n];
407  float * tmp = buffer;
408  TK_Status status;
409  int i;
410  for (i=0; i<n; ++i) {
411  *tmp = *f++;
412  fix_out (tmp++, 1);
413  }
414  status = PutData (tk, (char const *)buffer, n * (int)sizeof (float));
415  delete [] buffer;
416  if (status != TK_Normal)
417  return status;
418  return TK_Normal;
419  #else
420  return PutData (tk, (char const *)f, n * (int)sizeof (float));
421  #endif
422  }
423 
425  TK_Status PutData (BStreamFileToolkit & tk, unsigned char const * b, int n) alter { return PutData (tk, (char const *)b, n); }
426 
428  TK_Status PutData (BStreamFileToolkit & tk, unsigned short const * s, int n) alter { return PutData (tk, (short const *)s, n); }
429 
431  TK_Status PutData (BStreamFileToolkit & tk, unsigned int const * i, int n) alter { return PutData (tk, (int const *)i, n); }
432 
434  TK_Status PutData (BStreamFileToolkit & tk, char const & c) alter { return PutData (tk, &c, 1); }
435 
437  TK_Status PutData (BStreamFileToolkit & tk, short const & s) alter { return PutData (tk, &s, 1); }
438 
440  TK_Status PutData (BStreamFileToolkit & tk, int const & i) alter { return PutData (tk, &i, 1); }
441 
443  TK_Status PutData (BStreamFileToolkit & tk, unsigned char const & b) alter { return PutData (tk, &b, 1); }
444 
446  TK_Status PutData (BStreamFileToolkit & tk, unsigned short const & s) alter { return PutData (tk, &s, 1); }
447 
449  TK_Status PutData (BStreamFileToolkit & tk, unsigned int const & i) alter { return PutData (tk, &i, 1); }
450 
452  TK_Status PutData (BStreamFileToolkit & tk, float const & f) alter { return PutData (tk, &f, 1); }
453 
455  TK_Status PutOpcode (BStreamFileToolkit & tk, int adjust = 1) alter {
456  TK_Status status;
457  unsigned int sequence;
458 
459  if ((status = PutData (tk, Opcode ())) != TK_Normal)
460  return status;
461 
462  tk.adjust_written (adjust);
463 
464  sequence = tk.NextOpcodeSequence();
465  if (tk.GetLogging())
466  log_opcode (tk, sequence, Opcode());
467 
468  return status;
469  }
470 
471 
473  TK_Status PutAsciiOpcode (BStreamFileToolkit & tk, int adjust = 1, bool is_end = false, bool want_newline = true) alter;
474  // TK_Status PutAsciiOpcode (BStreamFileToolkit & tk, int adjust = 1) alter;
475 
477  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, char const * b, int n) alter;
478 
480  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, short const * s, int n) alter;
481 
483  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, int const * i, int n) alter;
484 
486  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, float const * f, int n) alter;
487 
489  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, unsigned char const * b, int n) alter;
490 
492  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, unsigned short const * s, int n) alter;
493 
495  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, unsigned int const * i, int n) alter;
496 
498  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, char const & c) alter;
499 
501  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, short const & s) alter;
502 
504  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, int const & i) alter;
505 
507  TK_Status PutAsciiFlag (BStreamFileToolkit & tk, char const *tag, int const & i) alter;
508 
510  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, unsigned char const & b) alter;
511 
513  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, unsigned short const & s) alter;
514 
516  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, unsigned int const & i) alter;
517 
519  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, float const & f) alter;
520 
522  TK_Status PutAsciiMask (BStreamFileToolkit & tk,char const *tag, int const & i) alter;
523 
525  TK_Status PutAsciiHex (BStreamFileToolkit & tk, char const *tag, int const & i) alter;
526 
528  TK_Status PutStartXMLTag (BStreamFileToolkit & tk, char const *tag) alter ;
529 
531  TK_Status PutEndXMLTag (BStreamFileToolkit & tk, char const *tag) alter ;
532 
533 
534  /* note -- fix for int types will work during read OR write phase, but floats need separate
535  routines for native->IEEE and IEEE->native
536  */
538  short flip (short s) {
539  return (short)(((s >> 8) & 0x00FF) | (s << 8));
540  }
542  int flip (int i) {
543  return ((i >> 24) & 0x000000FF) | ((i >> 8) & 0x0000FF00) |
544  ((i << 8) & 0x00FF0000) | (i << 24);
545  }
546 
547 #ifndef DOXYGEN_SHOULD_SKIP_THIS
548  #ifndef UNREFERENCED
549  #define UNREFERENCED(x) (void)(x)
550  #endif
551 #endif
552 
554  void fix (int * i, int n) {
555  #ifdef STREAM_BIGENDIAN
556  while (n--){
557  *i = flip (*i);
558  i++;
559  }
560  #else
561  UNREFERENCED(i);
562  UNREFERENCED(n);
563  #endif
564  }
566  void fix (short * s, int n) {
567  #ifdef STREAM_BIGENDIAN
568  while (n--){
569  *s = flip (*s);
570  s++;
571  }
572  #else
573  UNREFERENCED(s);
574  UNREFERENCED(n);
575  #endif
576  }
577 
579  void fix_in (float * f, int n) {
580  #ifdef NON_IEEE
581  // need to re-interpret from IEEE to native format
582  #endif
583 
584  #ifdef STREAM_BIGENDIAN
585  int * i = (int*) f;
586  while (n--){
587  *i = flip (*i);
588 
589  i++;
590  }
591  #else
592  UNREFERENCED(f);
593  UNREFERENCED(n);
594  #endif
595  }
597  void fix_out (float * f, int n) {
598  #ifdef NON_IEEE
599  // need to re-interpret from native format to IEEE
600  #endif
601 
602  #ifdef STREAM_BIGENDIAN
603  int * i = (int*) f;
604  while (n--){
605  *i = flip (*i);
606  i++;
607  }
608  #else
609  UNREFERENCED(f);
610  UNREFERENCED(n);
611  #endif
612  }
613 
615  void log_opcode (BStreamFileToolkit & tk, unsigned int sequence, unsigned char opcode) alter;
616 
617 
618  /* common conversions
619  these two are for converting between floats [0.0,1.0] and unsigned chars [0,255]
620  */
622  void floats_to_bytes (float const * in, unsigned char alter * out, int count) const {
623  while (count-- > 0)
624  *out++ = char (*in++ * 255.999f);
625  }
627  void bytes_to_floats (unsigned char const * in, float alter * out, int count) const {
628  while (count-- > 0)
629  *out++ = float (*in++) * (1.0f/255.0f);
630  }
631 
632  // access to toolkit utility functions
634  void add_segment (BStreamFileToolkit & tk, ID_Key key) alter { tk.add_segment (key); }
636  ID_Key remove_segment (BStreamFileToolkit & tk) alter { return tk.remove_segment(); }
638  void set_last_key (BStreamFileToolkit & tk, ID_Key key) alter { tk.set_last_key (key); }
641  if (tk.m_last_keys_used == 1)
642  return tk.m_last_keys[0];
643  else
644  return -1;
645  }
647  void adjust_written (BStreamFileToolkit & tk, int count) alter { tk.adjust_written (count); }
649  void increase_nesting (BStreamFileToolkit & tk, int amount=1) alter { tk.increase_nesting (amount); }
651  void decrease_nesting (BStreamFileToolkit & tk, int amount=1) alter { tk.decrease_nesting (amount); }
652 
656  void Revisit (BStreamFileToolkit & tk, float priority=0.0f, int variant=0) const { tk.revisit (Opcode(), priority, variant); }
657 
662  { return tk.opcode_handler (op); }
663 
665  void Record_Instance (BStreamFileToolkit & tk, ID_Key key, int variant,
666  int val1, int val2, int val3) const {
667  tk.record_instance (key, variant, this, val1, val2, val3);
668  }
670  bool Find_Instance (BStreamFileToolkit & tk, int val1, int val2, int val3) alter {
671  return tk.find_instance (this, val1, val2, val3);
672  }
673 
675  void Remember_Item (BStreamFileToolkit & tk, ID_Key key) const { tk.remember_item(key); }
677  bool Find_Item (BStreamFileToolkit & tk, ID_Key key) const { return tk.find_item(key); }
678 
680  bool validate_count (int count, int limit = 1<<24) const { return 0 <= count && count <= limit; }
681 
685  static float read_float (char const *cp, char const * alter * newcpp = 0);
687  static float read_float (char const *cp, char alter * alter * newcpp)
688  { return read_float (cp, (char const **)newcpp); }
690  static char * write_float (char * buffer, double f);
691 };
692 
694 #define IMPLEMENT_CLONE(class_name) \
695  TK_Status class_name::Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **newhandler) const { \
696  *newhandler = new class_name; \
697  if (*newhandler != null) \
698  return TK_Normal; \
699  else \
700  return tk.Error ("memory allocation in" #class_name "::clone failed"); \
701  } //
702 #define IMPLEMENT_CLONE_OPCODE(class_name) \
704  TK_Status class_name::Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **newhandler) const { \
705  *newhandler = new class_name (Opcode()); \
706  if (*newhandler != null) \
707  return TK_Normal; \
708  else \
709  return tk.Error ("memory allocation in" #class_name "::clone failed"); \
710 } //
711 
712 
713 
715 
723 // Additions need to be reflected in the 'opcode_string' table in BOpcodeHandler.cpp
725  TKE_Termination = '\x00',
726  TKE_Pause = '\x01',
727  TKE_Comment = ';',
729  TKE_Font = 'f',
731  TKE_Texture = 't',
732  TKE_Material = '\x02',
733  TKE_Open_Segment = '(',
735  TKE_Close_Segment = ')',
736  TKE_Reopen_Segment = 's',
737  TKE_Include_Segment = '<',
738  TKE_Style_Segment = '{',
740  TKE_Geometry_Attributes = ':',
742  TKE_Renumber_Key_Global = 'K',
743  TKE_Renumber_Key_Local = 'k',
744  TKE_Priority = '0',
745  TKE_Tag = 'q',
746  TKE_Bounding = 'b',
748  TKE_Bounding_Info = 'B',
749  TKE_Callback = '\x07',
750  TKE_Camera = '>',
751  TKE_Conditional_Action = '\'',
752  TKE_Conditions = '?',
753  TKE_Color = '"',
754  TKE_Color_By_Index = '\x08',
755  TKE_Color_By_Index_16 = '\x09',
756  TKE_Color_By_FIndex = '\x0A',
757  TKE_Color_RGB = '~',
758  TKE_Color_By_Value = '\x0B',
759  TKE_Color_Map = '\x0C',
760  TKE_Edge_Pattern = '\x0D',
761  TKE_Edge_Weight = '\x0E',
762  TKE_Face_Pattern = 'P',
763  TKE_Geometry_Options = '\x17',
764  TKE_Handedness = 'h',
765  TKE_Heuristics = 'H',
766  TKE_Line_Pattern = '-',
767  TKE_Line_Weight = '=',
768  TKE_Marker_Size = '+',
769  TKE_Marker_Symbol = '@',
770  TKE_Modelling_Matrix = '%',
771  TKE_LOD = '\x19',
772  TKE_Rendering_Options = 'R',
773  TKE_Selectability = '!',
774  TKE_Text_Alignment = '*',
775  TKE_Text_Font = 'F',
776  TKE_Text_Path = '|',
777  TKE_Text_Spacing = ' ',
778  TKE_Texture_Matrix = '$',
779  TKE_Unicode_Options = '\x16',
780  TKE_User_Index = 'n',
781  TKE_User_Index_Data = 'm',
782  TKE_User_Options = 'U',
783  TKE_User_Value = 'v',
784  TKE_Visibility = 'V',
785  TKE_Window = 'W',
786  TKE_Window_Frame = '#',
787  TKE_Window_Pattern = 'p',
788  TKE_Glyph_Definition = 'j',
789  TKE_Line_Style = 'J',
791  TKE_Area_Light = 'a',
793  TKE_Circle = 'C',
794  TKE_Circular_Arc = 'c',
795  TKE_Circular_Chord = '\\',
796  TKE_Circular_Wedge = 'w',
797  TKE_Cutting_Plane = '/',
798  TKE_Cylinder = 'Y',
799  TKE_Distant_Light = 'd',
800  TKE_Ellipse = 'E',
801  TKE_Elliptical_Arc = 'e',
802  TKE_Grid = 'g',
803  TKE_Image = 'i',
804  TKE_Infinite_Line = '`',
805  TKE_Infinite_Ray = '\x11',
806  TKE_Line = 'l',
807  TKE_Local_Light = '.',
808  TKE_Marker = 'X',
809  TKE_Mesh = 'M',
810  TKE_NURBS_Curve = 'N',
811  TKE_NURBS_Surface = 'A',
812  TKE_PolyCylinder = 'Q',
813  TKE_Polygon = 'G',
814  TKE_Polyline = 'L',
815  TKE_PolyPolyline = '\x10',
816  TKE_Reference = 'r',
817  TKE_Shell = 'S',
818  TKE_Sphere = '\x1a',
819  TKE_Spot_Light = '^',
820  TKE_Text = 'T',
822  TKE_Start_User_Data = '[',
824  TKE_Stop_User_Data = ']',
825  TKE_XML = '\x18',
826  TKE_External_Reference = '\x12',
827  TKE_External_Reference_Unicode = '\x13',
828  TKE_URL = '\x15',
829  TKE_Start_Compression = 'Z',
832  TKE_Repeat_Object = '&',
834  TKE_View = '}',
835  TKE_Clip_Rectangle = 'o',
836  TKE_Clip_Region = 'O',
838  TKE_File_Info = 'I',
840  TKE_Dictionary = 'D',
841  TKE_Dictionary_Locater = '_',
842  TKE_Thumbnail = '\x14',
843  TKE_Delete_Object = '\x7F',
847 
850  TKE_HW3D_Image = 0xE0,
854 };
855 
856 
858 
859 
865 class BBINFILETK_API TK_Default : public BBaseOpcodeHandler {
866 
867  protected:
868  char *m_opcode_buffer;
869  int m_buffer_count;
870 
871  public:
873  TK_Default () : BBaseOpcodeHandler (TKE_Pseudo_Handler) {m_opcode_buffer = 0, m_buffer_count = 0;}
874 
876 
878 
879 
880  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
881  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
882 
883 };
884 
890 class BBINFILETK_API TK_Unavailable : public BBaseOpcodeHandler {
891  public:
893  TK_Unavailable (char opcode) : BBaseOpcodeHandler (opcode) {}
894 
897 };
898 
901 
907 class BBINFILETK_API TK_Header : public BBaseOpcodeHandler {
908  protected:
911 
912  public:
914  TK_Header () : BBaseOpcodeHandler (TKE_Pseudo_Handler), m_current_object (0) {}
915  ~TK_Header();
916 
919 
920 
921  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
922  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
923 
924 
925  void Reset () alter;
926 };
927 
928 
930 
936 class BBINFILETK_API TK_File_Info : public BBaseOpcodeHandler {
937  protected:
939  int m_flags;
940 
941  public:
943  TK_File_Info () : BBaseOpcodeHandler (TKE_File_Info), m_flags (0) {}
944 
945 
949  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant) alter;
950  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special) alter
951  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
952 
953 
954  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
955  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
956 
957 
959  void SetFlags (int f) alter { m_flags = f; }
961  int GetFlags () alter { return m_flags; }
962 };
963 
964 
966 
974 class BBINFILETK_API TK_Comment : public BBaseOpcodeHandler {
975  protected:
977  int m_length;
979  char * m_comment;
980 
982  void set_comment (char const * comment) alter;
984  void set_comment (int length) alter;
985 
986  public:
988  TK_Comment (char const * comment = 0);
989  ~TK_Comment();
990 
994 
995  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
996  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
997  TK_Status ExecuteAscii (BStreamFileToolkit & tk) alter;
1000  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant) {
1001  (void)tk; (void)key; (void)variant;
1002  return TK_Normal;
1003  }
1004  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special) alter
1005  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
1006  void Reset () alter;
1007 
1012  void SetComment (char const * comment) alter { set_comment (comment); }
1017  void SetComment (int length) alter { set_comment (length); }
1021  char const * GetComment () const { return m_comment; }
1026  char alter * GetComment () alter { return m_comment; }
1027 };
1028 
1029 
1031 
1039 class BBINFILETK_API TK_Terminator : public BBaseOpcodeHandler {
1040  public:
1042  TK_Terminator (char opcode, bool is_file_terminator = true) : BBaseOpcodeHandler (opcode),
1043  m_terminate_file(is_file_terminator) {}
1044 
1048 
1049 
1050  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1051  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1052 
1053  protected:
1055  // meant to terminate the file or something else (viz. LOD collection)
1057 };
1058 
1059 
1061 
1068 class BBINFILETK_API TK_Compression : public BBaseOpcodeHandler {
1069  public:
1071  TK_Compression (char opcode) : BBaseOpcodeHandler (opcode) {}
1072 
1075 
1076  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1077  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1079  TK_Status ExecuteAscii (BStreamFileToolkit & tk) alter;
1080  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant) alter;
1081  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special) alter
1082  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
1083 };
1084 
1086 
1088 
1098 class BBINFILETK_API TK_Open_Segment : public BBaseOpcodeHandler {
1099  protected:
1100  int m_length;
1102  char * m_string;
1104  void set_segment (char const * segment) alter;
1107  void set_segment (int length) alter;
1108 
1109  public:
1111  TK_Open_Segment () : BBaseOpcodeHandler (TKE_Open_Segment), m_length (0), m_allocated (0), m_string (0) {}
1112  ~TK_Open_Segment();
1113 
1116  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1117 
1118  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1119  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1120  void Reset () alter;
1121 
1126  void SetSegment (char const * segment) alter { set_segment (segment); }
1127 
1132  void SetSegment (int length) alter { set_segment (length); }
1133 
1137  char const * GetSegment () const { return m_string; }
1142  char alter * GetSegment () alter { return m_string; }
1143 };
1144 
1145 
1147 
1156 class BBINFILETK_API TK_Close_Segment : public BBaseOpcodeHandler {
1157  public:
1159  TK_Close_Segment () : BBaseOpcodeHandler (TKE_Close_Segment) {}
1160 
1163  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1164 
1165  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1166  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1167 };
1168 
1169 
1170 
1172 
1184 class BBINFILETK_API TK_Reopen_Segment : public BBaseOpcodeHandler {
1185  protected:
1186  int m_index;
1188  public:
1190  TK_Reopen_Segment () : BBaseOpcodeHandler (TKE_Reopen_Segment), m_index (-1) {}
1191 
1194  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1195 
1196  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1197  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1198 
1200  void SetIndex (int i) alter { m_index = i; }
1202  int GetIndex () const { return m_index; }
1203 };
1204 
1205 
1207 
1215 class BBINFILETK_API TK_Referenced_Segment : public BBaseOpcodeHandler {
1216  protected:
1217  int m_length;
1219  char * m_string;
1222  char * m_condition;
1226  unsigned char m_renumbered_scope;
1228  bool m_follow;
1229 
1230  void set_segment (char const * segment) alter;
1231  void set_segment (int length) alter;
1232 
1233  public:
1235  TK_Referenced_Segment (unsigned char opcode);
1237 
1240  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1241 
1242  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1243  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1244  void Reset () alter;
1245 
1250  void SetSegment (char const * segment) alter { set_segment (segment); }
1255  void SetSegment (int length) alter { set_segment (length); }
1259  char const * GetSegment () const { return m_string; }
1264  char alter * GetSegment () alter { return m_string; }
1265 
1266 
1271  void SetCondition (char const * condition) alter;
1276  void SetCondition (int length) alter;
1280  char const * GetCondition () const { return m_condition; }
1285  char alter * GetCondition () alter { return m_condition; }
1286 
1287 
1289  void SetFollow (bool f) alter { m_follow = f; }
1291  bool GetFollow () alter { return m_follow; }
1292 };
1293 
1294 
1296 
1304 class BBINFILETK_API TK_Reference : public BBaseOpcodeHandler {
1305  protected:
1306  int m_index;
1309  char * m_condition;
1314  bool m_follow;
1315 
1316  public:
1318  TK_Reference ();
1319  ~TK_Reference();
1320 
1323  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1324 
1325  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1326  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1327  void Reset () alter;
1328 
1330  void SetIndex (int index) alter { m_index = index; }
1332  ID_Key GetIndex () alter { return m_index; }
1333 
1338  void SetCondition (char const * condition) alter;
1343  void SetCondition (int length) alter;
1347  char const * GetCondition () const { return m_condition; }
1352  char alter * GetCondition () alter { return m_condition; }
1353 
1354 
1356  void SetFollow (bool f) alter { m_follow = f; }
1358  bool GetFollow () alter { return m_follow; }
1359 };
1360 
1361 
1367 };
1368 
1369 
1371 
1379 class BBINFILETK_API TK_Instance : public BBaseOpcodeHandler {
1380  protected:
1386  float m_matrix[16];
1387 
1388  public:
1390  TK_Instance (int from_index=0, int from_variant=0, int to_index=0, int to_variant=0,
1391  int options=0, float const * xform=0);
1392 
1395  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1396 
1397  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1398  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1399 
1400  void Reset () alter;
1401 };
1402 
1404 
1407 class BBINFILETK_API TK_Delete_Object : public BBaseOpcodeHandler {
1408  protected:
1409  int m_index;
1410 
1411  public:
1413  TK_Delete_Object () : BBaseOpcodeHandler (TKE_Delete_Object), m_index (-1) {}
1414 
1417  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1418 
1419  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1420  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1421 
1423  void SetIndex (int i) alter { m_index = i; }
1425  int GetIndex () alter { return m_index; }
1426 };
1427 
1428 
1430 
1431 
1433 
1436 class BBINFILETK_API TK_LOD : public BBaseOpcodeHandler {
1437  protected:
1443  struct vlist_s *m_current_working;
1445 
1446  TK_Status ReadOneList (BStreamFileToolkit & tk) alter;
1447 
1448  public:
1450  TK_LOD () : BBaseOpcodeHandler (TKE_LOD) {
1451  m_num_primitives = 0;
1452  m_primitives = 0;
1453  m_highest_level = 0;
1454  m_levels_allocated = 0;
1455  m_substage = 0;
1456  m_current_working = 0;
1457  m_current_level = 0;
1458  }
1459  ~TK_LOD();
1460 
1463  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1464 
1465  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1466  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1467 
1468  void Reset () alter;
1469 };
1471 #define TKLOD_ESCAPE 255
1472 
1473 
1475 
1477 
1482 class BBINFILETK_API TK_Geometry_Attributes : public BBaseOpcodeHandler {
1483  protected:
1484 
1485  public:
1487  TK_Geometry_Attributes () : BBaseOpcodeHandler (TKE_Geometry_Attributes) {}
1488 
1491 
1492  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1493  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1495 };
1496 
1498 
1508 class BBINFILETK_API TK_Renumber : public BBaseOpcodeHandler {
1509  protected:
1511 
1512  public:
1516  TK_Renumber (unsigned char opcode, ID_Key key = 0) : BBaseOpcodeHandler (opcode), m_key (key) {}
1517 
1520  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1521 
1522  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1523  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1524 
1525  void SetKey (ID_Key k) alter { m_key = k; }
1527  ID_Key GetKey () const { return m_key; }
1528 };
1529 
1530 
1532 
1537 class BBINFILETK_API TK_Tag : public BBaseOpcodeHandler {
1538  protected:
1539 
1540  public:
1542  TK_Tag (unsigned char opcode = TKE_Tag) : BBaseOpcodeHandler (opcode) {}
1543 
1546 
1547  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1548  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1549 
1551  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0) alter;
1552  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special) alter
1553  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
1554 };
1555 
1557 
1564 // Note: unlike most opcode handlers, this one does not contain its own data, it is primarily a
1565 // wrapper around the key <-> index translation table in the toolkit.
1566 class BBINFILETK_API TK_Dictionary : public BBaseOpcodeHandler {
1567  protected:
1568  unsigned char m_format;
1570  unsigned char m_present;
1572 
1573  Internal_Translator::Index_Key_Pair alter * m_item;
1574 
1575  public:
1577  TK_Dictionary () : BBaseOpcodeHandler (TKE_Dictionary), m_format (0) {}
1578 
1581 
1582  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1583  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1584 
1586  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0) alter;
1587  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special) alter
1588  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
1589  void Reset () alter;
1590 };
1591 
1592 
1594 
1601 class BBINFILETK_API TK_Dictionary_Locater : public BBaseOpcodeHandler {
1602  protected:
1603  int m_size;
1604  int m_offset;
1605 
1606  public:
1608  TK_Dictionary_Locater () : BBaseOpcodeHandler (TKE_Dictionary_Locater), m_offset (0) {}
1609 
1612 
1613  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1614  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1615 
1617  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0) alter;
1618  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special) alter
1619  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
1620  void Reset () alter;
1621 
1623  void SetSize (int size) alter { m_size = size; }
1625  int GetSize () const { return m_size; }
1627  void SetOffset (int offset) alter { m_offset = offset; }
1629  int GetOffset () const { return m_offset; }
1630 };
1631 
1632 
1634 
1639  // first byte is common/shared items, plus flag for extended bits
1640  TKO_Geo_Face = 0x00000001,
1641  TKO_Geo_Edge = 0x00000002,
1642  TKO_Geo_Line = 0x00000004,
1643  TKO_Geo_Marker = 0x00000008,
1644  TKO_Geo_Text = 0x00000010,
1645  TKO_Geo_Window = 0x00000020,
1646  TKO_Geo_Image = 0x00000040,
1647 
1648  TKO_Geo_Extended = 0x00000080,
1649  TKO_Geo_Extended_Mask = 0xFFFFFF00,
1651 
1652  // extras for color
1653  TKO_Geo_Ambient_Up = 0x00000100,
1654  TKO_Geo_Light = 0x00000200,
1655  TKO_Geo_Face_Contrast = 0x00000400,
1657  TKO_Geo_Front = 0x00001000,
1658  TKO_Geo_Back = 0x00002000,
1659  TKO_Geo_Vertex = 0x00004000,
1660  TKO_Geo_Geom_Colors = 0x0000701F,
1661  TKO_Geo_Every_Colors = 0x000073BF,
1662 
1665  = 0xFFFF0000,
1667  = 16,
1668 
1669  TKO_Geo_Edge_Contrast = 0x00010000,
1670  TKO_Geo_Line_Contrast = 0x00020000,
1673  TKO_Geo_Cut_Edge = 0x00100000,
1675  TKO_Geo_Cut_Face = 0x00400000,
1676 
1677  TKO_Geo_Extended2 = 0x00800000,
1678  TKO_Geo_Extended2_Mask = 0xFF000000,
1680 
1681  TKO_Geo_Text_Contrast = 0x01000000,
1682  TKO_Geo_Ambient_Down = 0x02000000,
1684  = 0x04000000,
1685  TKO_Geo_Ambient = 0x02000100,
1686  TKO_Geo_All_Colors = 0x077F7F7F,
1687 
1688  //extras for selectability
1689  TKO_Geo_String_Cursor = 0x00000100,
1690 // TKO_Geo_Light = 0x00000200, //!< extra item for selectability; refer to ::HC_Set_Selectability for a description
1691 // TKO_Geo_Vertex = 0x00004000, //!< extra item for selectability; refer to ::HC_Set_Selectability for a description
1692  TKO_Geo_Isoline = 0x00000080,
1693  TKO_Geo_Geom_Selects = 0x0000435F,
1694  TKO_Geo_All_Selects = 0x000043FF,
1695 
1696  // extras for visibility
1697 // TKO_Geo_String_Cursor = 0x00000100, //!< extra item for visibility; refer to ::HC_Set_Visibility for a description
1698  TKO_Geo_Face_Lighting = 0x00000200,
1699  TKO_Geo_Edge_Lighting = 0x00000400,
1701  TKO_Geo_Light_Visibles = 0x00000E00,
1702 
1704  TKO_Geo_Perimeter_Edge = 0x00002000,
1705  TKO_Geo_Mesh_Quad = 0x00004000,
1706  TKO_Geo_Hard_Edge = 0x00008000,
1707  TKO_Geo_Cutting_Plane = 0x00010000,
1708  TKO_Geo_Shadow_Emit = 0x00020000,
1709  TKO_Geo_Shadow_Cast = 0x00040000,
1710  TKO_Geo_Shadow_Receive = 0x00080000,
1712 // TKO_Geo_Cut_Edge = 0x00100000, //!< extra item for visibility; refer to ::HC_Set_Visibility for a description
1713  TKO_Geo_Vertex_Vis = 0x00200000,
1714 // TKO_Geo_Cut_Face = 0x00400000, //!< extra item for visibility; refer to ::HC_Set_Visibility for a description
1715  TKO_Geo_Cut_Geometry = 0x00500000,
1716 
1717  TKO_Geo_Adjacent_Edge = 0x01000000,
1718  TKO_Geo_NonCulled_Edge = 0x02000000,
1719  TKO_Geo_Edge_Visibles = 0x0300F002,
1720 
1721 
1722  TKO_Geo_Geom_Visibles = 0x0301FFFF,
1723 
1724 
1725 
1726  TKO_Geo_All_Visibles = 0x037FFF7F
1727 };
1728 
1729 
1744 
1745  TKO_Channel_Count = 10,
1746 
1749 };
1750 
1751 
1753 
1758 class BBINFILETK_API TK_Color : public BBaseOpcodeHandler {
1759  protected:
1760  int m_mask;
1761  short m_channels;
1762 
1766  class BBINFILETK_API channel {
1767  public:
1768  float m_rgb[3];
1769  char * m_name;
1770 
1771  channel() : m_name (0) {}
1772  ~channel() { ::delete [] m_name; }
1773  void Reset () alter { ::delete [] m_name; m_name = 0; }
1774  };
1775 
1783  float m_gloss;
1784  float m_index;
1786 
1788  void set_channel_rgb (channel alter & c, float r, float g, float b, int which_channel = -1) alter {
1789  c.m_rgb[0] = r; c.m_rgb[1] = g; c.m_rgb[2] = b;
1790  if (which_channel != -1) {
1791  m_channels |= (1 << which_channel);
1792  if (which_channel > TKO_Channel_Extended)
1793  m_channels |= (1 << TKO_Channel_Extended);
1794  }
1795  }
1797  void set_channel_name (channel alter & c, char const * name, int which_channel = -1) alter;
1799  void set_channel_name (channel alter & c, int length, int which_channel = -1) alter;
1800 
1801  public:
1802  TK_Color ();
1803  ~TK_Color ();
1804 
1805  TK_Status Read (BStreamFileToolkit & tk) alter;
1806  TK_Status Write (BStreamFileToolkit & tk) alter;
1807  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1808 
1809  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1810  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1811 
1812  void Reset () alter;
1813 
1815  void SetGeometry (int m) alter {
1816  m_mask = m & TKO_Geo_All_Colors;
1817  if ((m & TKO_Geo_Extended_Mask) != 0) {
1818  m_mask |= TKO_Geo_Extended;
1819  if ((m & TKO_Geo_Extended_Colors_Mask) != 0) {
1820  m_mask |= TKO_Geo_Extended_Colors;
1821  if ((m & TKO_Geo_Extended2_Mask) != 0)
1822  m_mask |= TKO_Geo_Extended2;
1823  }
1824  }
1825  }
1827  int GetGeometry () const { return m_mask; }
1829  void SetChannels (int c) alter {
1830  m_channels = (short)c;
1831  if ((c & (~0 << (TKO_Channel_Extended_Shift))) != 0)
1832  m_channels |= (1 << TKO_Channel_Extended);
1833  }
1835  int GetChannels () const { return (int)m_channels; }
1836 
1838  void SetDiffuse (float r, float g, float b) alter { set_channel_rgb (m_diffuse, r, g, b, TKO_Channel_Diffuse); }
1840  void SetDiffuse (float const * rgb) alter { SetDiffuse (rgb[0], rgb[1], rgb[2]); }
1842  void SetDiffuseName (char const * name) alter { set_channel_name (m_diffuse, name, TKO_Channel_Diffuse); }
1844  void SetDiffuseName (int length) alter { set_channel_name (m_diffuse, length, TKO_Channel_Diffuse); }
1846  float const * GetDiffuse () const { return m_diffuse.m_rgb; }
1848  char const * GetDiffuseName () const { return m_diffuse.m_name; }
1850  char alter * GetDiffuseName () alter { return m_diffuse.m_name; }
1851 
1853  void SetSpecular (float r, float g, float b) alter { set_channel_rgb (m_specular, r, g, b, TKO_Channel_Specular);}
1855  void SetSpecular (float const * rgb) alter { SetSpecular (rgb[0], rgb[1], rgb[2]); }
1857  void SetSpecularName (char const * name) alter { set_channel_name (m_specular, name, TKO_Channel_Specular); }
1859  void SetSpecularName (int length) alter { set_channel_name (m_specular, length, TKO_Channel_Specular);}
1861  float const * GetSpecular () const { return m_specular.m_rgb; }
1863  char const * GetSpecularName () const { return m_specular.m_name; }
1865  char alter * GetSpecularName () alter { return m_specular.m_name; }
1866 
1868  void SetMirror (float r, float g, float b) alter { set_channel_rgb (m_mirror, r, g, b, TKO_Channel_Mirror); }
1870  void SetMirror (float const * rgb) alter { SetMirror (rgb[0], rgb[1], rgb[2]); }
1872  void SetMirrorName (char const * name) alter { set_channel_name (m_mirror, name, TKO_Channel_Mirror); }
1874  void SetMirrorName (int length) alter { set_channel_name (m_mirror, length, TKO_Channel_Mirror); }
1876  float const * GetMirror () const { return m_mirror.m_rgb; }
1878  char const * GetMirrorName () const { return m_mirror.m_name; }
1880  char alter * GetMirrorName () alter { return m_mirror.m_name; }
1881 
1883  void SetTransmission (float r, float g, float b) alter { set_channel_rgb (m_transmission, r, g, b, TKO_Channel_Transmission); }
1885  void SetTransmission (float const * rgb) alter { SetTransmission (rgb[0], rgb[1], rgb[2]); }
1887  void SetTransmissionName (char const * name) alter { set_channel_name (m_transmission, name, TKO_Channel_Transmission); }
1889  void SetTransmissionName (int length) alter { set_channel_name (m_transmission, length, TKO_Channel_Transmission); }
1891  float const * GetTransmission () const { return m_transmission.m_rgb; }
1893  char const * GetTransmissionName () const { return m_transmission.m_name; }
1895  char alter * GetTransmissionName () alter { return m_transmission.m_name; }
1896 
1898  void SetEmission (float r, float g, float b) alter { set_channel_rgb (m_emission, r, g, b, TKO_Channel_Emission);}
1900  void SetEmission (float const * rgb) alter { SetEmission (rgb[0], rgb[1], rgb[2]); }
1902  void SetEmissionName (char const * name) alter { set_channel_name (m_emission, name, TKO_Channel_Emission); }
1904  void SetEmissionName (int length) alter { set_channel_name (m_emission, length, TKO_Channel_Emission);}
1906  float const * GetEmission () const { return m_emission.m_rgb; }
1908  char const * GetEmissionName () const { return m_emission.m_name; }
1910  char alter * GetEmissionName () alter { return m_emission.m_name; }
1911 
1913  void SetEnvironmentName (char const * name) alter { set_channel_name (m_environment, name, TKO_Channel_Environment); }
1915  void SetEnvironmentName (int length) alter { set_channel_name (m_environment, length, TKO_Channel_Environment); }
1917  char const * GetEnvironmentName () const { return m_environment.m_name; }
1919  char alter * GetEnvironmentName () alter { return m_environment.m_name; }
1920 
1922  void SetBumpName (char const * name) alter { set_channel_name (m_bump, name, TKO_Channel_Bump); }
1924  void SetBumpName (int length) alter { set_channel_name (m_bump, length, TKO_Channel_Bump); }
1926  char const * GetBumpName () const { return m_bump.m_name; }
1928  char alter * GetBumpName () alter { return m_bump.m_name; }
1929 
1931  void SetGloss (float g) alter { m_gloss = g; m_channels |= (1<<TKO_Channel_Gloss); }
1933  float GetGloss () const { return m_gloss; }
1935  void SetIndex (float i) alter { m_index = i; m_channels |= (1<<TKO_Channel_Index); }
1937  float GetIndex () const { return m_index; }
1938 };
1939 
1940 
1942 
1947 class BBINFILETK_API TK_Color_RGB : public BBaseOpcodeHandler {
1948  protected:
1949  int m_mask;
1950  float m_rgb[3];
1951 
1952  public:
1954  TK_Color_RGB () : BBaseOpcodeHandler (TKE_Color_RGB), m_mask (0) {}
1955 
1958  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1959 
1960  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
1961  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
1962 
1967  void SetGeometry (int m) alter {
1968  m_mask = m & TKO_Geo_All_Colors;
1969  if ((m & TKO_Geo_Extended_Mask) != 0) {
1970  m_mask |= TKO_Geo_Extended;
1971  if ((m & TKO_Geo_Extended_Colors_Mask) != 0) {
1972  m_mask |= TKO_Geo_Extended_Colors;
1973  if ((m & TKO_Geo_Extended2_Mask) != 0)
1974  m_mask |= TKO_Geo_Extended2;
1975  }
1976  }
1977  }
1982  int GetGeometry () const { return m_mask; }
1983 
1985  void SetRGB (float r, float g, float b) alter { m_rgb[0] = r; m_rgb[1] = g; m_rgb[2] = b; }
1987  void SetRGB (float const * rgb) alter { SetRGB (rgb[0], rgb[1], rgb[2]); }
1989  float const * GetRGB () const { return m_rgb; }
1990 };
1991 
1992 
1994 
1999 class BBINFILETK_API TK_Color_By_Value : public BBaseOpcodeHandler {
2000  protected:
2001  int m_mask;
2002  float m_value[3];
2003  char m_space;
2004 
2005  public:
2007  TK_Color_By_Value () : BBaseOpcodeHandler (TKE_Color_By_Value), m_mask (0) {}
2008 
2011  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
2012 
2013  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
2014  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
2015 
2020  void SetGeometry (int m) alter {
2021  m_mask = m & TKO_Geo_All_Colors;
2022  if ((m & TKO_Geo_Extended_Mask) != 0) {
2023  m_mask |= TKO_Geo_Extended;
2024  if ((m & TKO_Geo_Extended_Colors_Mask) != 0) {
2025  m_mask |= TKO_Geo_Extended_Colors;
2026  if ((m & TKO_Geo_Extended2_Mask) != 0)
2027  m_mask |= TKO_Geo_Extended2;
2028  }
2029  }
2030  }
2035  int GetGeometry () const { return m_mask; }
2036 
2038  void SetSpace (int s) alter { m_space = (char)s; }
2040  int GetSpace () const { return (int)m_space; }
2041 
2043  void SetValue (float a, float b, float c) alter {
2044  m_value[0] = a; m_value[1] = b; m_value[2] = c;
2045  }
2047  void SetValue (float const * triple) alter { SetValue (triple[0], triple[1], triple[2]); }
2049  float const * GetValue () const { return m_value; }
2050 };
2051 
2052 
2054 
2060 class BBINFILETK_API TK_Color_By_Index : public BBaseOpcodeHandler {
2061  protected:
2062  int m_mask;
2063  int m_index;
2064 
2065  public:
2067  TK_Color_By_Index (unsigned char opcode) : BBaseOpcodeHandler (opcode), m_mask (0), m_index (-1) {}
2068 
2071  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
2072 
2073  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
2074  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
2075 
2080  void SetGeometry (int m) alter {
2081  m_mask = m & TKO_Geo_All_Colors;
2082  if ((m & TKO_Geo_Extended_Mask) != 0) {
2083  m_mask |= TKO_Geo_Extended;
2084  if ((m & TKO_Geo_Extended_Colors_Mask) != 0) {
2085  m_mask |= TKO_Geo_Extended_Colors;
2086  if ((m & TKO_Geo_Extended2_Mask) != 0)
2087  m_mask |= TKO_Geo_Extended2;
2088  }
2089  }
2090  }
2095  int GetGeometry () const { return m_mask; }
2096 
2098  void SetIndex (int i) alter { m_index = i; }
2100  int GetIndex () const { return m_index; }
2101 };
2102 
2104 
2109 class BBINFILETK_API TK_Color_By_FIndex : public BBaseOpcodeHandler {
2110  protected:
2111  int m_mask;
2112  float m_index;
2113 
2114  public:
2116  TK_Color_By_FIndex () : BBaseOpcodeHandler (TKE_Color_By_FIndex), m_mask (0), m_index (-1.0f) {}
2117 
2120  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
2121 
2122  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
2123  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
2124 
2129  void SetGeometry (int m) alter {
2130  m_mask = m & TKO_Geo_All_Colors;
2131  if ((m & TKO_Geo_Extended_Mask) != 0) {
2132  m_mask |= TKO_Geo_Extended;
2133  if ((m & TKO_Geo_Extended_Colors_Mask) != 0) {
2134  m_mask |= TKO_Geo_Extended_Colors;
2135  if ((m & TKO_Geo_Extended2_Mask) != 0)
2136  m_mask |= TKO_Geo_Extended2;
2137  }
2138  }
2139  }
2144  int GetGeometry () const { return m_mask; }
2145 
2147  void SetIndex (float val) alter { m_index = val; }
2149  float GetIndex () const { return m_index; }
2150 };
2151 
2158 };
2159 
2162 
2167 class BBINFILETK_API TK_Color_Map : public BBaseOpcodeHandler {
2168  protected:
2169  int m_length;
2170  float * m_values;
2171  char * m_string;
2172  unsigned char m_format;
2173 
2175  void set_values (int length, float const * values = 0) alter;
2176 
2177  public:
2180  : BBaseOpcodeHandler (TKE_Color_Map), m_length (0), m_values (0), m_string (0), m_format (TKO_Map_RGB_Values) {}
2181  ~TK_Color_Map();
2182 
2185  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
2186 
2187  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
2188  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
2189 
2190  void Reset () alter;
2191 
2193  void SetFormat (int f) alter { m_format = (unsigned char)f; }
2195  int GetFormat () const { return (int)m_format; }
2196 
2201  void SetValues (int count, float const * values = 0) alter { set_values (count, values); }
2203  float const * GetValues () const { return m_values; }
2205  float alter * GetValues () alter { return m_values; }
2207  int GetLength () const { return m_length; }
2208 
2213  void SetString (char const * string) alter;
2218  void SetString (int length) alter;
2222  char const * GetString () const { return m_string; }
2227  char alter * GetString () alter { return m_string; }
2228 };
2229 
2231 
2234 
2240 class BBINFILETK_API TK_Callback : public BBaseOpcodeHandler {
2241  protected:
2242  int m_length;
2243  char * m_string;
2246  void set_callback (char const * callback) alter;
2247 
2248  void set_callback (int length) alter;
2249 
2250  public:
2252  TK_Callback () : BBaseOpcodeHandler (TKE_Callback), m_length (0), m_string (0) {}
2253  ~TK_Callback();
2254 
2257  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
2258 
2259  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
2260  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
2261 
2262  void Reset () alter;
2263 
2265  void SetCallback (char const * callback) alter { set_callback (callback); }
2267  void SetCallback (int length) alter { set_callback (length); }
2269  char const * GetCallback () const { return m_string; }
2271  char alter * GetCallback () alter { return m_string; }
2272 };
2273 
2275 
2276 
2288  TKO_Interp_Texture = 0x00000007,
2289 
2290  TKO_Interp_Color_Faces = 0x00000008,
2291  TKO_Interp_Color_Edges = 0x00000010,
2293  TKO_Interp_Color = 0x00000038,
2294 
2295  TKO_Interp_Index_Faces = 0x00000040,
2296  TKO_Interp_Index_Edges = 0x00000080,
2297  TKO_Interp_Index_FE = 0x000000C0,
2298 
2307  TKO_Interp_Lighting = 0x00000F00,
2308 
2311  TKO_Rendo_Any_HSR = 0x00003000,
2312 
2313  TKO_Rendo_Local_Viewer = 0x00004000,
2316 
2317  TKO_Rendo_Debug = 0x00020000,
2318 
2319  TKO_Rendo_Technology = 0x00040000,
2320  TKO_Rendo_Quantization = 0x00080000,
2321  TKO_Rendo_TQ = 0x000C0000,
2322 
2324 
2326  TKO_Rendo_Fog = 0x00400000,
2327 
2330 
2331  TKO_Rendo_LOD = 0x02000000,
2332  TKO_Rendo_LOD_Options = 0x04000000,
2333 
2337 
2338  TKO_Rendo_Stereo = 0x20000000,
2340 
2341 // hpux doesn't like the high bit set as part of the enumerated type
2342  //TKO_Rendo_Extended = 0x80000000,
2343 #ifndef SWIG
2344 #define TKO_Rendo_Extended 0x80000000
2345 #else
2346  TKO_Rendo_Extended = 0x8000000,
2347 #endif
2348 
2349  // extended settings
2350  TKO_Rendo_Tessellation = 0x00000001,
2353  TKO_Rendo_Cut_Geometry = 0x00000008,
2354  TKO_Rendo_Depth_Range = 0x00000010,
2356  TKO_Rendo_Image_Scale = 0x00000040,
2360  TKO_Rendo_Image_Tint = 0x00000400,
2366  TKO_Rendo_Screen_Range = 0x00010000,
2368  TKO_Rendo_Shadow_Map = 0x00040000,
2373  TKO_Rendo_Antialias = 0x00800000,
2382 
2383 #ifndef SWIG
2384 #define TKO_Rendo_Extended2 0x80000000
2385 #else
2386  TKO_Rendo_Extended2 = 0x8000000,
2387 #endif
2388 
2389  // more extended settings
2390  TKO_Rendo_Forced_Lock = 0x00000001,
2398 
2399  // type for specific fields
2410  TKO_HSR_Mask = 0x0F,
2411  TKO_THSR_Mask = 0xF0,
2412 
2424 
2425 
2436 
2440 
2448  TKO_Simple_Shadow_Extended = 0x0080, // internal use, indicates presence of extended bits
2449  TKO_Simple_Shadow_Extended_Mask = 0xFF00, // internal use, indicates bits which require TKO_Simple_Shadow_Extended
2450  TKO_Simple_Shadow_Extended_Shift = 8, // internal use, shift of extended section
2455  TKO_Simple_Shadow_Extended2 = 0x8000, // reserved for future expansion
2456 
2463  TKO_Shadow_Map_Extended = 0x0080, // indicates presence of extended bits
2466  TKO_Shadow_Map_Extended_Mask = 0xFF00, // mask of bits requiring extended
2467  TKO_Shadow_Map_Extended2 = 0x8000, // reserved for future expansion
2468 
2481  TKO_Simple_Reflection_Extended2 = 0x8000, // reserved for future expansion
2482 
2483  TKO_Mask_None = 0x0000,
2491  TKO_Mask_Camera = 0x000F,
2492  TKO_Mask_Model = 0x0070,
2493  TKO_Mask_All = 0x007F,
2499 
2505 
2510 
2515 
2524 
2540  TKO_Hidden_Line_Color = 0x00010000,
2541  TKO_Hidden_Line_Weight = 0x00020000,
2548 
2555 
2559 
2566 
2570 
2571  TKO_Tint_On = 0x0001,
2572  TKO_Tint_Off = 0x0002,
2573  TKO_Tint_Range = 0x0004,
2574  TKO_Tint_Color = 0x0008,
2575  TKO_Tint_Effect = 0x0010,
2576 
2581 
2583  TKO_LOD_Screen_Space = 0x00000002,
2584  TKO_LOD_Physical = 0x00000004,
2585  TKO_LOD_Tolerance_FRU = 0x00000008,
2586  TKO_LOD_Tolerance_ORU = 0x00000010,
2587  TKO_LOD_Preprocess = 0x00000020,
2590  TKO_LOD_Ratio = 0x00000100,
2591  TKO_LOD_Threshold = 0x00000200,
2593  TKO_LOD_Clamp = 0x00000800,
2594  TKO_LOD_Num_Levels = 0x00001000,
2595  TKO_LOD_Max_Degree = 0x00002000,
2596  TKO_LOD_Tolerance = 0x00004000,
2599  TKO_LOD_Fallback = 0x00020000,
2601  TKO_LOD_Algorithm = 0x00080000,
2602  TKO_LOD_Mode_Segment = 0x00100000,
2603 
2608 
2611 
2617 
2626 
2633 
2643 
2647 
2650  = 0x0200,
2652  = 0x0400,
2653 
2656 
2659 
2665 };
2666 
2671  TKO_Lock_Callback = 0x00000001,
2672  TKO_Lock_Camera = 0x00000002,
2673  TKO_Lock_Color = 0x00000004,
2674  TKO_Lock_Color_Map = 0x00000008,
2675  TKO_Lock_Driver = 0x00000010,
2677  TKO_Lock_Edge_Pattern = 0x00000040,
2678  TKO_Lock_Edge_Weight = 0x00000080,
2679  TKO_Lock_Face_Pattern = 0x00000100,
2680  TKO_Lock_Handedness = 0x00000200,
2681  TKO_Lock_Heuristics = 0x00000400,
2682  TKO_Lock_Line_Pattern = 0x00000800,
2683  TKO_Lock_Line_Weight = 0x00001000,
2684  TKO_Lock_Marker_Size = 0x00002000,
2685  TKO_Lock_Marker_Symbol = 0x00004000,
2686  TKO_Lock_Metafile = 0x00008000,
2689  TKO_Lock_Selectability = 0x00040000,
2690  TKO_Lock_Styles = 0x00080000,
2692  TKO_Lock_Text_Font = 0x00200000,
2693  TKO_Lock_Text_Path = 0x00400000,
2694  TKO_Lock_Text_Spacing = 0x00800000,
2695  TKO_Lock_User_Options = 0x01000000,
2696  TKO_Lock_User_Value = 0x02000000,
2698  TKO_Lock_Visibility = 0x08000000,
2699  TKO_Lock_Window = 0x10000000,
2700  TKO_Lock_Window_Frame = 0x20000000,
2702  TKO_Lock_All = 0x7FFFFFFF
2703 
2704 };
2705 
2720 };
2721 
2722 
2723 #if 0
2724 class BBINFILETK_API TK_Radiosity_RayTrace_Options : public BBaseOpcodeHandler {
2725  protected:
2726 
2727  public:
2728  TK_Radiosity_RayTrace_Options () : BBaseOpcodeHandler (TKE_Radiosity_RayTrace_Options) {}
2729  ~TK_Radiosity_RayTrace_Options () {}
2730 
2733 
2734  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
2735  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
2736 };
2737 #endif
2738 
2739 
2741 
2747 class BBINFILETK_API TK_Rendering_Options : public BBaseOpcodeHandler {
2748  protected:
2749  int m_mask[3];
2750  int m_value[3];
2751 
2752  unsigned char m_hsr;
2753  unsigned char m_tq;
2754  int m_debug;
2757 
2758  float m_fog_limits[2];
2759 
2844 
2845  unsigned char m_buffer_options_mask;
2846  unsigned char m_buffer_options_value;
2848 
2854  float m_hlr_color[3];
2856  unsigned char m_hlr_weight_units;
2857  unsigned char m_hlr_hsr_algorithm;
2858 
2859  unsigned short m_contour_options;
2860  unsigned short m_isoline_options;
2873  unsigned char * m_isoline_weights_unit;
2874 
2875  unsigned short m_tint_options;
2876  float m_tint_color[3];
2877  float m_tint_range[2];
2879 
2884  float m_ratio[8];
2886  float m_threshold[8];
2889  unsigned char m_clamp;
2890  unsigned char m_num_levels;
2892  float m_tolerance;
2893  float m_bounding[6];
2895  float m_cutoff[8];
2896  unsigned char m_heuristic;
2897  unsigned char m_fallback;
2898 
2912 
2915 
2916  unsigned char m_tessellations;
2918  char m_cylinder[8];
2920  char m_sphere[8];
2921 
2922  float m_gooch_color_range[2];
2926  unsigned short m_transparency_options;
2927 
2928  unsigned char m_cut_geometry;
2929  unsigned char m_cut_geometry_level;
2930  unsigned char m_cut_geometry_match;
2932 
2933  unsigned short m_simple_shadow;
2934  unsigned char m_simple_shadow_blur;
2936  float m_simple_shadow_plane[4];
2937  float m_simple_shadow_light[3];
2938  float m_simple_shadow_color[3];
2939  float m_simple_shadow_opacity;
2940 
2941  unsigned short m_shadow_map;
2942  unsigned short m_shadow_map_resolution;
2943  unsigned char m_shadow_map_samples;
2944 
2945  unsigned short m_simple_reflection;
2946  float m_simple_reflection_plane[4];
2953 
2954  float m_depth_range[2];
2955  float m_screen_range[4];
2956  float m_ambient_up_vector[3];
2957  float m_image_scale[2];
2958  unsigned short m_mask_transform;
2959 
2960  unsigned char m_geometry_options;
2961  float m_dihedral;
2962 
2963  float m_image_tint_color[3];
2964  float m_texture_tint_color[3];
2965  unsigned char m_depth_peeling_layers;
2967 
2972  unsigned char m_display_list_level;
2973  unsigned char m_antialias;
2974 
2975  int m_extra;
2976 
2977 #if 0
2978  TK_Radiosity_RayTrace_Options *m_rrt;
2979 #endif
2980 
2981  public:
2985 
2988  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
2989 
2990  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
2991  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
2992 
2993  void Reset () alter;
2994 
2996  void SetMask (int m0, int m1=0, int m2=0) alter {
2997  m_mask[0] = m0;
2998  m_mask[1] = m1;
2999  m_mask[2] = m2;
3000  if (m2 != 0)
3001  m_mask[1] |= TKO_Rendo_Extended;
3002  if (m1 != 0)
3003  m_mask[0] |= TKO_Rendo_Extended;
3004  }
3006  int GetMask (int index=0) const { return m_mask[index]; }
3007 
3009  void SetValue (int v0, int v1=0, int v2=0) alter { m_value[0] = v0; m_value[1] = v1; m_value[2] = v2; }
3011  int GetValue (int index=0) const { return m_value[index]; }
3012 
3014  void SetHSR (int h) alter { m_hsr &= 0xF0; m_hsr |= (unsigned char)h & 0x0F; }
3016  int GetHSR () const { return (int)(m_hsr & 0x0F); }
3017 
3019  void SetTransparentHSR (int t) alter { m_hsr &= 0x0F; m_hsr |= (unsigned char)t << 4; }
3021  int GetTransparentHSR () const { return (int)(m_hsr >> 4); }
3022 
3024  void SetTransparentStyle (int s) alter { m_transparency_options = (unsigned short)s; }
3026  int GetTransparentStyle () const { return (int)m_transparency_options; }
3027 
3029  void SetTechnology (int t) alter { m_tq &= 0xF0; m_tq |= (unsigned char)t & 0x0F; }
3031  int GetTechnology () const { return (int)(m_tq & 0x0F); }
3032 
3034  void SetQuantization (int q) alter { m_tq &= 0x0F; m_tq |= (unsigned char)q << 4; }
3036  int GetQuantization () const { return (int)(m_tq >> 4); }
3037 
3039  void SetDebug (int d) alter { m_debug = d; }
3041  int GetDebug () const { return m_debug; }
3042 
3044  void SetFaceDisplacement (int d) alter { m_face_displacement = d; }
3046  int GetFaceDisplacement () const { return m_face_displacement; }
3047 
3049  void SetVertexDisplacement (int d) alter { m_vertex_displacement = d; }
3051  int GetVertexDisplacement () const { return m_vertex_displacement; }
3052 
3054  void SetGeneralDisplacement (int d) alter { m_general_displacement = d; }
3056  int GetGeneralDisplacement () const { return m_general_displacement; }
3057 
3059  void SetJoinCutoffAngle (int d) alter { m_join_cutoff_angle = d; }
3061  int GetJoinCutoffAngle () const { return m_join_cutoff_angle; }
3062 
3064  void SetFogLimits (float n, float f) alter { m_fog_limits[0] = n; m_fog_limits[1] = f; }
3066  void SetFogLimits (float const * l) alter { SetFogLimits (l[0], l[1]); }
3068  float const * GetFogLimits () const { return m_fog_limits; }
3069 
3070 
3072  void SetLockMask (int m) alter { m_lock_mask = m; }
3074  int GetLockMask () const { return m_lock_mask; }
3075 
3077  void SetLockValue (int v) alter { m_lock_value = v; }
3079  int GetLockValue () const { return m_lock_value; }
3080 
3085  void SetVisibilityLockMask (int m) alter { m_lock_visibility_mask = m; }
3090  int GetVisibilityLockMask () const { return m_lock_visibility_mask; }
3091 
3096  void SetVisibilityLockValue (int v) alter { m_lock_visibility_value = v; }
3101  int GetVisibilityLockValue () const { return m_lock_visibility_value; }
3102 
3103 
3108  void SetColorLockMask (int m) alter { m_lock_color_mask = m; }
3113  int GetColorLockMask () const { return m_lock_color_mask; }
3114 
3119  void SetColorLockValue (int v) alter { m_lock_color_value = v; }
3124  int GetColorLockValue () const { return m_lock_color_value; }
3125 
3126 
3131  void SetColorFaceLockMask (int m) alter { m_lock_color_face_mask = (short)m; }
3136  int GetColorFaceLockMask () const { return m_lock_color_face_mask; }
3137 
3142  void SetColorFaceLockValue (int v) alter { m_lock_color_face_value = (short)v; }
3147  int GetColorFaceLockValue () const { return m_lock_color_face_value; }
3148 
3149 
3154  void SetColorEdgeLockMask (int m) alter { m_lock_color_edge_mask = (short)m; }
3159  int GetColorEdgeLockMask () const { return m_lock_color_edge_mask; }
3160 
3165  void SetColorEdgeLockValue (int v) alter { m_lock_color_edge_value = (short)v; }
3170  int GetColorEdgeLockValue () const { return m_lock_color_edge_value; }
3171 
3172 
3177  void SetColorLineLockMask (int m) alter { m_lock_color_line_mask = (short)m; }
3182  int GetColorLineLockMask () const { return m_lock_color_line_mask; }
3183 
3188  void SetColorLineLockValue (int v) alter { m_lock_color_line_value = (short)v; }
3193  int GetColorLineLockValue () const { return m_lock_color_line_value; }
3194 
3195 
3200  void SetColorMarkerLockMask (int m) alter { m_lock_color_marker_mask = (short)m; }
3205  int GetColorMarkerLockMask () const { return m_lock_color_marker_mask; }
3206 
3211  void SetColorMarkerLockValue (int v) alter { m_lock_color_marker_value = (short)v; }
3216  int GetColorMarkerLockValue () const { return m_lock_color_marker_value; }
3217 
3218 
3223  void SetColorTextLockMask (int m) alter { m_lock_color_text_mask = (short)m; }
3228  int GetColorTextLockMask () const { return m_lock_color_text_mask; }
3229 
3234  void SetColorTextLockValue (int v) alter { m_lock_color_text_value = (short)v; }
3239  int GetColorTextLockValue () const { return m_lock_color_text_value; }
3240 
3241 
3246  void SetColorWindowLockMask (int m) alter { m_lock_color_window_mask = (short)m; }
3251  int GetColorWindowLockMask () const { return m_lock_color_window_mask; }
3252 
3257  void SetColorWindowLockValue (int v) alter { m_lock_color_window_value = (short)v; }
3262  int GetColorWindowLockValue () const { return m_lock_color_window_value; }
3263 
3264 
3269  void SetColorFaceContrastLockMask (int m) alter { m_lock_color_face_contrast_mask = (short)m; }
3274  int GetColorFaceContrastLockMask () const { return m_lock_color_face_contrast_mask; }
3275 
3280  void SetColorFaceContrastLockValue (int v) alter { m_lock_color_face_contrast_value = (short)v; }
3285  int GetColorFaceContrastLockValue () const { return m_lock_color_face_contrast_value; }
3286 
3287 
3292  void SetColorWindowContrastLockMask (int m) alter { m_lock_color_window_contrast_mask = (short)m; }
3297  int GetColorWindowContrastLockMask () const { return m_lock_color_window_contrast_mask; }
3298 
3303  void SetColorWindowContrastLockValue (int v) alter { m_lock_color_window_contrast_value = (short)v; }
3308  int GetColorWindowContrastLockValue () const { return m_lock_color_window_contrast_value; }
3309 
3310 
3315  void SetColorBackLockMask (int m) alter { m_lock_color_back_mask = (short)m; }
3320  int GetColorBackLockMask () const { return m_lock_color_back_mask; }
3321 
3326  void SetColorBackLockValue (int v) alter { m_lock_color_back_value = (short)v; }
3331  int GetColorBackLockValue () const { return m_lock_color_back_value; }
3332 
3333 
3338  void SetColorVertexLockMask (int m) alter { m_lock_color_vertex_mask = (short)m; }
3343  int GetColorVertexLockMask () const { return m_lock_color_vertex_mask; }
3344 
3349  void SetColorVertexLockValue (int v) alter { m_lock_color_vertex_value = (short)v; }
3354  int GetColorVertexLockValue () const { return m_lock_color_vertex_value; }
3355 
3356 
3361  void SetColorEdgeContrastLockMask (int m) alter { m_lock_color_edge_contrast_mask = (short)m; }
3366  int GetColorEdgeContrastLockMask () const { return m_lock_color_edge_contrast_mask; }
3367 
3372  void SetColorEdgeContrastLockValue (int v) alter { m_lock_color_edge_contrast_value = (short)v; }
3377  int GetColorEdgeContrastLockValue () const { return m_lock_color_edge_contrast_value; }
3378 
3379 
3384  void SetColorLineContrastLockMask (int m) alter { m_lock_color_line_contrast_mask = (short)m; }
3389  int GetColorLineContrastLockMask () const { return m_lock_color_line_contrast_mask; }
3390 
3395  void SetColorLineContrastLockValue (int v) alter { m_lock_color_line_contrast_value = (short)v; }
3400  int GetColorLineContrastLockValue () const { return m_lock_color_line_contrast_value; }
3401 
3402 
3407  void SetColorMarkerContrastLockMask (int m) alter { m_lock_color_marker_contrast_mask = (short)m; }
3412  int GetColorMarkerContrastLockMask () const { return m_lock_color_marker_contrast_mask; }
3413 
3418  void SetColorMarkerContrastLockValue (int v) alter { m_lock_color_marker_contrast_value = (short)v; }
3423  int GetColorMarkerContrastLockValue () const { return m_lock_color_marker_contrast_value; }
3424 
3425 
3430  void SetColorVertexContrastLockMask (int m) alter { m_lock_color_vertex_contrast_mask = (short)m; }
3435  int GetColorVertexContrastLockMask () const { return m_lock_color_vertex_contrast_mask; }
3436 
3441  void SetColorVertexContrastLockValue (int v) alter { m_lock_color_vertex_contrast_value = (short)v; }
3446  int GetColorVertexContrastLockValue () const { return m_lock_color_vertex_contrast_value; }
3447 
3448 
3453  void SetColorTextContrastLockMask (int m) alter { m_lock_color_text_contrast_mask = (short)m; }
3458  int GetColorTextContrastLockMask () const { return m_lock_color_text_contrast_mask; }
3459 
3464  void SetColorTextContrastLockValue (int v) alter { m_lock_color_text_contrast_value = (short)v; }
3469  int GetColorTextContrastLockValue () const { return m_lock_color_text_contrast_value; }
3470 
3471 
3472 
3473 
3475  void SetForcedLockMask (int m) alter { m_forced_mask = m; }
3477  int GetForcedLockMask () const { return m_forced_mask; }
3478 
3480  void SetForcedLockValue (int v) alter { m_forced_value = v; }
3482  int GetForcedLockValue () const { return m_forced_value; }
3483 
3488  void SetVisibilityForcedLockMask (int m) alter { m_forced_visibility_mask = m; }
3493  int GetVisibilityForcedLockMask () const { return m_forced_visibility_mask; }
3494 
3499  void SetVisibilityForcedLockValue (int v) alter { m_forced_visibility_value = v; }
3504  int GetVisibilityForcedLockValue () const { return m_forced_visibility_value; }
3505 
3506 
3511  void SetColorForcedLockMask (int m) alter { m_forced_color_mask = m; }
3516  int GetColorForcedLockMask () const { return m_forced_color_mask; }
3517 
3522  void SetColorForcedLockValue (int v) alter { m_forced_color_value = v; }
3527  int GetColorForcedLockValue () const { return m_forced_color_value; }
3528 
3529 
3534  void SetColorFaceForcedLockMask (int m) alter { m_forced_color_face_mask = (short)m; }
3539  int GetColorFaceForcedLockMask () const { return m_forced_color_face_mask; }
3540 
3545  void SetColorFaceForcedLockValue (int v) alter { m_forced_color_face_value = (short)v; }
3550  int GetColorFaceForcedLockValue () const { return m_forced_color_face_value; }
3551 
3552 
3557  void SetColorEdgeForcedLockMask (int m) alter { m_forced_color_edge_mask = (short)m; }
3562  int GetColorEdgeForcedLockMask () const { return m_forced_color_edge_mask; }
3563 
3568  void SetColorEdgeForcedLockValue (int v) alter { m_forced_color_edge_value = (short)v; }
3573  int GetColorEdgeForcedLockValue () const { return m_forced_color_edge_value; }
3574 
3575 
3580  void SetColorLineForcedLockMask (int m) alter { m_forced_color_line_mask = (short)m; }
3585  int GetColorLineForcedLockMask () const { return m_forced_color_line_mask; }
3586 
3591  void SetColorLineForcedLockValue (int v) alter { m_forced_color_line_value = (short)v; }
3596  int GetColorLineForcedLockValue () const { return m_forced_color_line_value; }
3597 
3598 
3603  void SetColorMarkerForcedLockMask (int m) alter { m_forced_color_marker_mask = (short)m; }
3608  int GetColorMarkerForcedLockMask () const { return m_forced_color_marker_mask; }
3609 
3614  void SetColorMarkerForcedLockValue (int v) alter { m_forced_color_marker_value = (short)v; }
3619  int GetColorMarkerForcedLockValue () const { return m_forced_color_marker_value; }
3620 
3621 
3626  void SetColorTextForcedLockMask (int m) alter { m_forced_color_text_mask = (short)m; }
3631  int GetColorTextForcedLockMask () const { return m_forced_color_text_mask; }
3632 
3637  void SetColorTextForcedLockValue (int v) alter { m_forced_color_text_value = (short)v; }
3642  int GetColorTextForcedLockValue () const { return m_forced_color_text_value; }
3643 
3644 
3649  void SetColorWindowForcedLockMask (int m) alter { m_forced_color_window_mask = (short)m; }
3654  int GetColorWindowForcedLockMask () const { return m_forced_color_window_mask; }
3655 
3660  void SetColorWindowForcedLockValue (int v) alter { m_forced_color_window_value = (short)v; }
3665  int GetColorWindowForcedLockValue () const { return m_forced_color_window_value; }
3666 
3667 
3672  void SetColorFaceContrastForcedLockMask (int m) alter { m_forced_color_face_contrast_mask = (short)m; }
3677  int GetColorFaceContrastForcedLockMask () const { return m_forced_color_face_contrast_mask; }
3678 
3683  void SetColorFaceContrastForcedLockValue (int v) alter { m_forced_color_face_contrast_value = (short)v; }
3688  int GetColorFaceContrastForcedLockValue () const { return m_forced_color_face_contrast_value; }
3689 
3690 
3695  void SetColorWindowContrastForcedLockMask (int m) alter { m_forced_color_window_contrast_mask = (short)m; }
3700  int GetColorWindowContrastForcedLockMask () const { return m_forced_color_window_contrast_mask; }
3701 
3706  void SetColorWindowContrastForcedLockValue (int v) alter { m_forced_color_window_contrast_value = (short)v; }
3711  int GetColorWindowContrastForcedLockValue () const { return m_forced_color_window_contrast_value; }
3712 
3713 
3718  void SetColorBackForcedLockMask (int m) alter { m_forced_color_back_mask = (short)m; }
3723  int GetColorBackForcedLockMask () const { return m_forced_color_back_mask; }
3724 
3729  void SetColorBackForcedLockValue (int v) alter { m_forced_color_back_value = (short)v; }
3734  int GetColorBackForcedLockValue () const { return m_forced_color_back_value; }
3735 
3736 
3741  void SetColorVertexForcedLockMask (int m) alter { m_forced_color_vertex_mask = (short)m; }
3746  int GetColorVertexForcedLockMask () const { return m_forced_color_vertex_mask; }
3747 
3752  void SetColorVertexForcedLockValue (int v) alter { m_forced_color_vertex_value = (short)v; }
3757  int GetColorVertexForcedLockValue () const { return m_forced_color_vertex_value; }
3758 
3759 
3764  void SetColorEdgeContrastForcedLockMask (int m) alter { m_forced_color_edge_contrast_mask = (short)m; }
3769  int GetColorEdgeContrastForcedLockMask () const { return m_forced_color_edge_contrast_mask; }
3770 
3775  void SetColorEdgeContrastForcedLockValue (int v) alter { m_forced_color_edge_contrast_value = (short)v; }
3780  int GetColorEdgeContrastForcedLockValue () const { return m_forced_color_edge_contrast_value; }
3781 
3782 
3787  void SetColorLineContrastForcedLockMask (int m) alter { m_forced_color_line_contrast_mask = (short)m; }
3792  int GetColorLineContrastForcedLockMask () const { return m_forced_color_line_contrast_mask; }
3793 
3798  void SetColorLineContrastForcedLockValue (int v) alter { m_forced_color_line_contrast_value = (short)v; }
3803  int GetColorLineContrastForcedLockValue () const { return m_forced_color_line_contrast_value; }
3804 
3805 
3810  void SetColorMarkerContrastForcedLockMask (int m) alter { m_forced_color_marker_contrast_mask = (short)m; }
3815  int GetColorMarkerContrastForcedLockMask () const { return m_forced_color_marker_contrast_mask; }
3816 
3821  void SetColorMarkerContrastForcedLockValue (int v) alter { m_forced_color_marker_contrast_value = (short)v; }
3826  int GetColorMarkerContrastForcedLockValue () const { return m_forced_color_marker_contrast_value; }
3827 
3828 
3833  void SetColorVertexContrastForcedLockMask (int m) alter { m_forced_color_vertex_contrast_mask = (short)m; }
3838  int GetColorVertexContrastForcedLockMask () const { return m_forced_color_vertex_contrast_mask; }
3839 
3844  void SetColorVertexContrastForcedLockValue (int v) alter { m_forced_color_vertex_contrast_value = (short)v; }
3849  int GetColorVertexContrastForcedLockValue () const { return m_forced_color_vertex_contrast_value; }
3850 
3851 
3856  void SetColorTextContrastForcedLockMask (int m) alter { m_forced_color_text_contrast_mask = (short)m; }
3861  int GetColorTextContrastForcedLockMask () const { return m_forced_color_text_contrast_mask; }
3862 
3867  void SetColorTextContrastForcedLockValue (int v) alter { m_forced_color_text_contrast_value = (short)v; }
3872  int GetColorTextContrastForcedLockValue () const { return m_forced_color_text_contrast_value; }
3873 
3874 
3875 
3876 
3878  void SetBufferOptionsMask (int v) alter { m_buffer_options_mask = (unsigned char)v; }
3880  int GetBufferOptionsMask () const { return m_buffer_options_mask; }
3882  void SetBufferOptionsValue (int v) alter { m_buffer_options_value = (unsigned char) v; }
3884  int GetBufferOptionsValue () const { return m_buffer_options_value; }
3886  void SetBufferSizeLimit (int l) alter { m_buffer_size_limit = l; }
3888  int GetBufferSizeLimit () const { return m_buffer_size_limit; }
3889 
3890 
3892  void SetStereoSeparation (float s) alter { m_stereo_separation = s; }
3894  float GetStereoSeparation () const { return m_stereo_separation; }
3896  void SetStereoDistance (float d) alter { m_stereo_distance = d; }
3898  float GetStereoDistance () const { return m_stereo_distance; }
3899 
3900 
3902  void SetHlrOptions (int o) alter {
3903  m_hlr_options = o;
3904  if ((o & TKO_Hidden_Line_Extended_Mask) != 0) {
3905  m_hlr_options |= TKO_Hidden_Line_Extended;
3906  if ((o & TKO_Hidden_Line_Extended2_Mask) != 0)
3907  m_hlr_options |= TKO_Hidden_Line_Extended2;
3908  }
3909  }
3911  int GetHlrOptions () const { return m_hlr_options; }
3913  void SetHlrDimFactor (float d) alter { m_hlr_dim_factor = d; }
3915  float GetHlrDimFactor () const { return m_hlr_dim_factor; }
3917  void SetHlrFaceDisplacement (float d) alter { m_hlr_face_displacement = d; }
3919  float GetHlrFaceDisplacement () const { return m_hlr_face_displacement; }
3921  void SetHlrLinePattern (int p) alter { m_hlr_line_pattern = p; }
3923  int GetHlrLinePattern () const { return m_hlr_line_pattern; }
3925  void SetHlrFaceSortingAlgorithm (int a) alter { m_hlr_hsr_algorithm = (unsigned char)a; }
3927  float GetHlrFaceSortingAlgorithm () const { return m_hlr_hsr_algorithm; }
3928 
3929 
3932  m_nurbs_options_mask = m;
3933  if ((m & TKO_NURBS_Extended_Mask) != 0)
3934  m_nurbs_options_mask |= TKO_NURBS_Extended;
3935  }
3937  int GetNURBSOptionsMask () const { return m_nurbs_options_mask; }
3939  void SetNURBSOptionsValue (int v) alter { m_nurbs_options_value = v; }
3941  int GetNURBSOptionsValue () const { return m_nurbs_options_value; }
3943  void SetNURBSCurveBudget (int b) alter { m_curve_budget = b; }
3945  int GetNURBSCurveBudget () const { return m_curve_budget; }
3947  void SetNURBSCurveContinuedBudget (int b) alter { m_curve_continued_budget = b; }
3949  int GetNURBSCurveContinuedBudget () const { return m_curve_continued_budget; }
3951  void SetNURBSSurfaceBudget (int b) alter { m_curve_budget = b; }
3953  int GetNURBSSurfaceBudget () const { return m_curve_budget; }
3955  void SetNURBSSurfaceTrimBudget (int b) alter { m_surface_trim_budget = b; }
3957  int GetNURBSSurfaceTrimBudget () const { return m_surface_trim_budget; }
3958 
3959 
3961  void SetLodOptionsMask (int v) alter { m_lod_options_mask = v; }
3963  int GetLodOptionsMask () const { return m_lod_options_mask; }
3965  void SetLodOptionsValue (int v) alter { m_lod_options_value = v; }
3967  int GetLodOptionsValue () const { return m_lod_options_value; }
3969  void SetLodAlgorithm (int v) alter { m_lod_algorithm = (char)v; }
3971  int GetLodAlgorithm () const { return m_lod_algorithm; }
3973  void SetLodMinimumTriangleCount (int v) alter { m_min_triangle_count = v; }
3975  int GetLodMinimumTriangleCount () const { return m_min_triangle_count; }
3977  void SetLodNumLevels (int v) alter { m_num_levels = (unsigned char)v; }
3979  int GetLodNumLevels () const { return m_num_levels; }
3981  void SetLodClamp (int v) alter { m_clamp = (unsigned char)v; }
3983  int GetLodClamp () const { return m_clamp; }
3985  void SetLodMaxDegree (int v) alter { m_max_degree = v; }
3987  int GetLodMaxDegree () const { return m_max_degree; }
3989  void SetLodTolerance (float v) alter { m_tolerance = v; }
3991  float GetLodTolerance () const { return m_tolerance; }
3993  void SetLodFallback (int v) alter { m_fallback = (char)v; }
3995  int GetLodFallback () const { return m_fallback; }
3996 
3998  void SetLodBounding (float x1, float y1, float z1, float x2, float y2, float z2) alter {
3999  m_bounding[0] = x1; m_bounding[1] = y1; m_bounding[2] = z1;
4000  m_bounding[3] = x2; m_bounding[4] = y2; m_bounding[5] = z2;
4001  }
4003  void SetLodBounding (float const * s, float const * e) alter {
4004  SetLodBounding (s[0], s[1], s[2], e[0], e[1], e[2]);
4005  }
4007  void SetLodBounding (float const * p) alter { SetLodBounding (&p[0], &p[3]); }
4009  float const * GetLodBounding () const { return m_bounding; }
4010 
4012  void SetLodRatio (float r) alter { m_num_ratios = 1; m_ratio[0] = r; }
4014  void SetLodRatios (int c, float const * r = 0) alter {
4015  m_num_ratios = (char)c;
4016  if (r != 0) {
4017  int i;
4018  for (i=0; i<c; ++i)
4019  m_ratio[i] = r[i];
4020  }
4021  }
4023  int GetLodNumRatios () const { return m_num_ratios; }
4025  float const * GetLodRatios () const { return m_ratio; }
4027  float alter * GetLodRatios () alter { return m_ratio; }
4028 
4030  void SetLodThresholdType (int v) alter { m_threshold_type = (char)v; }
4032  int GetLodThresholdType () const { return m_threshold_type; }
4034  void SetLodThreshold (float r) alter { m_num_thresholds = 1; m_threshold[0] = r; }
4036  void SetLodThresholds (int c, float const * r = 0) alter {
4037  m_num_thresholds = (char)c;
4038  if (r != 0) {
4039  int i;
4040  for (i=0; i<c; ++i)
4041  m_threshold[i] = r[i];
4042  }
4043  }
4045  int GetLodNumThresholds () const { return m_num_thresholds; }
4047  float const * GetLodThresholds () const { return m_threshold; }
4049  float alter * GetLodThresholds () alter { return m_threshold; }
4050 
4052  void SetLodCutoff (float r) alter { m_num_cutoffs = 1; m_cutoff[0] = r; }
4054  void SetLodCutoffs (int c, float const * r = 0) alter {
4055  m_num_cutoffs = (char)c;
4056  if (r != 0) {
4057  int i;
4058  for (i=0; i<c; ++i)
4059  m_cutoff[i] = r[i];
4060  }
4061  }
4063  int GetLodNumCutoffs () const { return m_num_cutoffs; }
4065  float const * GetLodCutoffs () const { return m_cutoff; }
4067  float alter * GetLodCutoffs () alter { return m_cutoff; }
4068 
4069 
4071  void SetTessellationMask (int m) alter { m_tessellations = (unsigned char)m; }
4073  int GetTessellationMask () const { return m_tessellations; }
4075  void SetCylinderTessellation (int n) alter { m_num_cylinder = (char)1; m_cylinder[0] = (char)n; }
4077  void SetCylinderTessellations (int c, char const * n = 0) alter {
4078  m_num_cylinder = (char)c;
4079  if (n != 0) {
4080  int i;
4081  for (i=0; i<c; ++i)
4082  m_cylinder[i] = n[i];
4083  }
4084  }
4086  int GetNumCylinderTessellations () const { return m_num_cylinder; }
4088  char const * GetCylinderTessellations () const { return m_cylinder; }
4090  char alter * GetCylinderTessellations () alter { return m_cylinder; }
4092  void SetSphereTessellation (int n) alter { m_num_sphere = (char)1; m_sphere[0] = (char)n; }
4094  void SetSphereTessellations (int c, char const * n = 0) alter {
4095  m_num_sphere = (char)c;
4096  if (n != 0) {
4097  int i;
4098  for (i=0; i<c; ++i)
4099  m_sphere[i] = n[i];
4100  }
4101  }
4103  int GetNumSphereTessellations () const { return m_num_sphere; }
4105  char const * GetSphereTessellations () const { return m_sphere; }
4107  char alter * GetSphereTessellations () alter { return m_sphere; }
4108 
4110  void SetGeometryOptionsMask (int m) alter { m_geometry_options = (unsigned char)m; }
4112  int GetGeometryOptionsMask () const { return m_geometry_options; }
4113 
4115  void SetHardEdgeAngle (int m) alter { m_dihedral = (unsigned char)m; }
4117  float GetHardEdgeAngle () const { return m_dihedral; }
4118 
4120  void SetMaskTransform (int m) alter { m_mask_transform = (unsigned char)m; }
4122  int GetMaskTransform () const { return (int)m_mask_transform; }
4123 
4124 
4126  void SetCutGeometry (int m) alter { m_cut_geometry = (unsigned char)m; }
4128  int GetCutGeometry () const { return (int)m_cut_geometry; }
4129 
4131  void SetCutGeometryLevel (int m) alter { m_cut_geometry_level = (unsigned char)m; }
4133  int GetCutGeometryLevel () const { return (int)m_cut_geometry_level; }
4134 
4136  void SetCutGeometryColorMatch (int m) alter { m_cut_geometry_match = (unsigned char)m; }
4138  int GetCutGeometryColorMatch () const { return (int)m_cut_geometry_match; }
4139 
4141  void SetCutGeometryTolerance (float m) alter { m_cut_geometry_tolerance = m; }
4143  float GetCutGeometryTolerance () const { return m_cut_geometry_tolerance; }
4144 
4145 
4147  void SetDisplayListLevel (int m) alter { m_display_list_level = (unsigned char)m; }
4149  int GetDisplayListLevel () const { return (int)m_display_list_level; }
4150 
4152  void SetSimpleShadow (int m) alter {
4153  m_simple_shadow = (unsigned short)m;
4154  if ((m & TKO_Simple_Shadow_Extended_Mask) != 0)
4155  m_simple_shadow |= TKO_Simple_Shadow_Extended;
4156  }
4158  int GetSimpleShadow () const { return (int)m_simple_shadow; }
4159 
4161  void SetSimpleShadowBlur (int m) alter { m_simple_shadow_blur = (unsigned char)m; }
4163  int GetSimpleShadowBlur () const { return (int)m_simple_shadow_blur; }
4164 
4166  void SetSimpleShadowResolution (int m) alter { m_simple_shadow_resolution = (unsigned short)m; }
4168  int GetSimpleShadowResolution () const { return (int)m_simple_shadow_resolution; }
4169 
4171  void SetSimpleShadowLight (float x, float y, float z) alter {
4172  m_simple_shadow_light[0] = x;
4173  m_simple_shadow_light[1] = y;
4174  m_simple_shadow_light[2] = z;
4175  }
4177  void SetSimpleShadowLight (float const * l) alter { SetSimpleShadowLight (l[0], l[1], l[2]); }
4179  float const * getSimpleShadowLight () const { return m_simple_shadow_light; }
4180 
4182  void SetSimpleShadowPlane (float a, float b, float c, float d) alter {
4183  m_simple_shadow_plane[0] = a;
4184  m_simple_shadow_plane[1] = b;
4185  m_simple_shadow_plane[2] = c;
4186  m_simple_shadow_plane[3] = d;
4187  }
4189  void SetSimpleShadowPlane (float const * p) alter { SetSimpleShadowPlane (p[0], p[1], p[2], p[3]); }
4191  float const * GetSimpleShadowPlane () const { return m_simple_shadow_plane; }
4192 
4194  void SetSimpleShadowColor (float r, float g, float b) alter
4195  { m_simple_shadow_color[0] = r; m_simple_shadow_color[1] = g; m_simple_shadow_color[2] = b; }
4197  void SetSimpleShadowColor (float const * rgb) alter { SetSimpleShadowColor (rgb[0], rgb[1], rgb[2]); }
4199  float const * GetSimpleShadowColor () const { return m_simple_shadow_color; }
4200 
4202  void SetSimpleShadowOpacity (float o) alter { m_simple_shadow_opacity = o; }
4204  float GetSimpleShadowOpacity () const { return m_simple_shadow_opacity; }
4205 
4206 
4208  void SetShadowMap (int m) alter { m_shadow_map = (unsigned char)m; }
4210  int GetShadowMap () const { return (int)m_shadow_map; }
4211 
4213  void SetShadowMapResolution (int m) alter { m_shadow_map_resolution = (unsigned short)m; }
4215  int GetShadowMapResolution () const { return (int)m_shadow_map_resolution; }
4216 
4218  void SetShadowMapSamples (int m) alter { m_shadow_map_samples = (unsigned char)m; }
4220  int GetShadowMapSamples () const { return (int)m_shadow_map_samples; }
4221 
4222 
4224  void SetSimpleReflection (int m) alter { m_simple_reflection = (unsigned short)m; }
4226  int GetSimpleReflection () const { return (int)m_simple_reflection; }
4227 
4229  void SetSimpleReflectionPlane (float a, float b, float c, float d) alter {
4230  m_simple_reflection_plane[0] = a;
4231  m_simple_reflection_plane[1] = b;
4232  m_simple_reflection_plane[2] = c;
4233  m_simple_reflection_plane[3] = d;
4234  }
4236  void SetSimpleReflectionPlane (float const * p) alter { SetSimpleReflectionPlane (p[0], p[1], p[2], p[3]); }
4238  float const * GetSimpleReflectionPlane () const { return m_simple_reflection_plane; }
4239 
4241  void SetSimpleReflectionOpacity (float o) alter { m_simple_reflection_opacity = o; }
4243  float GetSimpleReflectionOpacity () const { return m_simple_reflection_opacity; }
4244 
4246  void SetSimpleReflectionVisibilityMask (int m) alter { m_simple_reflection_visibility_mask = m; }
4248  int GetSimpleReflectionVisibilityValue () const { return m_simple_reflection_visibility_value; }
4249 
4250 
4252  void SetDepthRange (float n, float f) alter { m_depth_range[0] = n; m_depth_range[1] = f; }
4254  void SetDepthRange (float const * l) alter { SetDepthRange (l[0], l[1]); }
4256  float const * GetDepthRange () const { return m_depth_range; }
4257 
4258 
4260  void SetScreenRange (float l, float r, float b, float t) alter
4261  { m_screen_range[0] = l; m_screen_range[1] = r; m_screen_range[2] = b; m_screen_range[3] = t; }
4263  void SetScreenRange (float const * l) alter { SetScreenRange (l[0], l[1], l[2], l[3]); }
4265  float const * GetScreenRange () const { return m_screen_range; }
4266 
4270  void SetAmbientUpVector (float x, float y, float z) alter
4271  { m_ambient_up_vector[0] = x; m_ambient_up_vector[1] = y; m_ambient_up_vector[2] = z; }
4273  void SetAmbientUpVector (float const * v) alter { SetAmbientUpVector (v[0], v[1], v[2]); }
4275  float const * GetAmbientUpVector () const { return m_ambient_up_vector; }
4276 
4278  void SetImageScale (float x, float y) alter { m_image_scale[0] = x; m_image_scale[1] = y; }
4280  void SetImageScale (float const * s) alter { SetImageScale (s[0], s[1]); }
4282  float const * GetImageScale () const { return m_image_scale; }
4283 
4284 
4286  void SetImageTintColor (float r, float g, float b) alter
4287  { m_image_tint_color[0] = r; m_image_tint_color[1] = g; m_image_tint_color[2] = b; }
4289  void SetImageTintColor (float const * rgb) alter { SetImageTintColor (rgb[0], rgb[1], rgb[2]); }
4291  float const * GetImageTintColor () const { return m_image_tint_color; }
4292 
4294  void SetDiffuseTextureTintColor (float r, float g, float b) alter
4295  { m_texture_tint_color[0] = r; m_texture_tint_color[1] = g; m_texture_tint_color[2] = b; }
4297  void SetDiffuseTextureTintColor (float const * rgb) alter { SetDiffuseTextureTintColor (rgb[0], rgb[1], rgb[2]); }
4299  float const * GetDiffuseTextureTintColor () const { return m_texture_tint_color; }
4300 
4302  void SetAntiAlias (int m) alter { m_antialias = (unsigned char)m; }
4304  int GetAntiAlias () const { return (int)m_antialias; }
4305 
4307  void SetVertexDecimation (float f) alter { m_vertex_decimation = f; }
4309  float GetVertexDecimation () const { return m_vertex_decimation; }
4310 };
4311 
4313 
4326  TKO_Heuristic_Clipping = 0x00000100,
4333 
4334  TKO_Heuristic_Extended = 0x00008000,
4337 
4338  TKO_Heuristic_Culling = 0x00010000,
4346 
4348  TKO_Heuristic_Static = 0x02000000,
4351 
4354 
4357 
4378 
4383 
4389 
4397 
4401 
4404 };
4405 
4406 
4407 
4409 
4415 class BBINFILETK_API TK_Heuristics : public BBaseOpcodeHandler {
4416  protected:
4417  int m_mask;
4418  int m_value;
4419 
4423 
4424  unsigned char m_extras;
4432  float m_vector[3];
4434 
4435  unsigned char m_ordered_weights_mask;
4436  float m_ordered_weights[TKO_Heur_Order_Count];
4437  unsigned char m_selection_level;
4438  unsigned char m_model_type;
4439 
4440  public:
4442  TK_Heuristics () : BBaseOpcodeHandler (TKE_Heuristics),
4443  m_mask (0), m_value (0), m_culling(0), m_pixel_threshold (0), m_maximum_extent (0), m_maximum_extent_mode(0) {}
4444  ~TK_Heuristics ();
4445 
4448  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
4449 
4450  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
4451  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
4452 
4454  void SetMask (int m) alter {
4455  m_mask = m;
4456  if ((m & TKO_Heuristic_Extended_Mask) != 0)
4457  m_mask |= TKO_Heuristic_Extended;
4458  }
4460  int GetMask () const { return m_mask; }
4461 
4463  void SetValue (int v) alter { m_value = v; }
4465  int GetValue () const { return m_value; }
4466 
4468  void SetRelatedSelectionLimit (int r) alter { m_related = r; }
4470  int GetRelatedSelectionLimit () const { return m_related; }
4471 
4473  void SetInternalSelectionLimit (int i) alter { m_internal_shell = m_internal_polyline = i; }
4475  int GetInternalSelectionLimit () const { return m_internal_shell; }
4476 
4478  void SetInternalShellSelectionLimit (int i) alter { m_internal_shell = i; }
4480  int GetInternalShellSelectionLimit () const { return m_internal_shell; }
4481 
4483  void SetInternalPolylineSelectionLimit (int i) alter { m_internal_polyline = i; }
4485  int GetInternalPolylineSelectionLimit () const { return m_internal_polyline; }
4486 
4488  void SetExtras (int e) alter { m_extras = (unsigned char)e; }
4490  int GetExtras () const { return (int)m_extras; }
4491 
4493  void SetCulling (int c) alter { m_culling = (unsigned short)c; }
4495  int GetCulling () const { return (int)m_culling; }
4497  void SetPixelThreshold (int c) alter { m_pixel_threshold = c; }
4499  int GetPixelThreshold () const { return m_pixel_threshold; }
4501  void SetMaximumExtent (int c) alter { m_maximum_extent = c; }
4503  int GetMaximumExtent () const { return m_maximum_extent; }
4505  int GetMaximumExtentMode () const { return m_maximum_extent_mode; }
4507  void SetMaximumExtentMode (int c) alter { m_maximum_extent_mode = c; }
4509  int GetMaximumExtentLevel () const { return m_maximum_extent_level; }
4511  void SetMaximumExtentLevel (int c) alter { m_maximum_extent_level = (unsigned char)c; }
4513  void SetHardExtent (int c) alter { m_hard_extent = c; }
4515  int GetHardExtent () const { return m_hard_extent; }
4517  float const * GetVector () const { return m_vector; }
4519  void SetVector (float x, float y, float z) alter {
4520  m_vector[0] = x;
4521  m_vector[1] = y;
4522  m_vector[2] = z;
4523  }
4525  void SetVector (float const * v) alter { SetVector(v[0], v[1], v[2]); }
4527  float GetVectorTolerance () const { return m_vector_tolerance; }
4529  void SetVectorTolerance (float tol) alter { m_vector_tolerance = tol; }
4530 
4532  void SetOrderedWeightsMask (int c) alter { m_ordered_weights_mask = (unsigned char)c; }
4534  int GetOrderedWeightsMask () const { return (int)m_ordered_weights_mask; }
4535 
4537  void SetOrderedWeight (int index, float weight) alter {
4538  m_ordered_weights[index] = weight;
4539  m_ordered_weights_mask |= 1<<index;
4540  }
4542  float GetOrderedWeight (int index) const { return m_ordered_weights[index]; }
4544  float const * GetOrderedWeights () const { return m_ordered_weights; }
4546  float alter * GetOrderedWeights () alter { return m_ordered_weights; }
4547 
4549  void SetSelectionLevel (int l) alter { m_selection_level = (unsigned char)l; }
4551  int GetSelectionLevel () const { return (int)m_selection_level; }
4552 
4554  void SetForceDefer (int l) alter { m_force_defer = l; }
4556  int GetForceDefer () const { return m_force_defer; }
4557 };
4558 
4560 
4567 };
4568 
4569 
4571 
4577 class BBINFILETK_API TK_Geometry_Options : public BBaseOpcodeHandler {
4578  protected:
4579  unsigned short m_mask;
4580  unsigned short m_value;
4581 
4583  float m_orientation[6];
4584 
4585  public:
4587  TK_Geometry_Options () : BBaseOpcodeHandler (TKE_Geometry_Options),
4588  m_mask (0), m_value (0), m_orientation_count (0) {}
4589  ~TK_Geometry_Options ();
4590 
4593  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
4594 
4595  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
4596  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
4597 
4599  void SetMask (int m) alter { m_mask = (unsigned short)m; }
4601  int GetMask () const { return (int)m_mask; }
4602 
4604  void SetOrientation (int count, float const * o) alter {
4605  if (count != 3 && count != 6)
4606  return;
4607  m_orientation_count = (unsigned char)count;
4608  while (count-- > 0)
4609  m_orientation[count] = o[count];
4610  }
4612  int GetOrientationCount () const { return (int) m_orientation_count; }
4614  float const * GetOrientation () const { return m_orientation; }
4615 };
4616 
4619 
4624 class BBINFILETK_API TK_Visibility : public BBaseOpcodeHandler {
4625  protected:
4626  int m_mask;
4627  int m_value;
4628 
4629  public:
4632  : BBaseOpcodeHandler (TKE_Visibility), m_mask (0), m_value (0) {}
4633 
4636  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
4637 
4638  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
4639  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
4640 
4644  void SetGeometry (int m) alter {
4645  m_mask = m & TKO_Geo_All_Visibles;
4646  if ((m & TKO_Geo_Extended_Mask) != 0) {
4647  m_mask |= TKO_Geo_Extended;
4648  if ((m & TKO_Geo_Extended2_Mask) != 0)
4649  m_mask |= TKO_Geo_Extended2;
4650  }
4651  }
4656  int GetGeometry () const { return m_mask; }
4657 
4662  void SetValue (int m) alter { m_value = m; }
4667  int GetValue () const { return m_value; }
4668 };
4669 
4672 
4679 class BBINFILETK_API TK_Selectability : public BBaseOpcodeHandler {
4680  protected:
4681  int m_mask;
4682  int m_down;
4683  int m_up;
4687 
4688  public:
4691  : BBaseOpcodeHandler (TKE_Selectability),
4692  m_mask (0), m_down (0), m_up (0), m_move_down (0), m_move_up (0), m_invisible (0) {}
4693 
4696  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
4697 
4698  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
4699  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
4700 
4704  void SetGeometry (int m) alter {
4705  m_mask = m & TKO_Geo_All_Selects;
4706  if ((m & TKO_Geo_Extended_Mask) != 0)
4707  m_mask |= TKO_Geo_Extended;
4708  }
4713  int GetGeometry () const { return m_mask; }
4714 
4719  void SetDown (int m) alter { m_down = m; }
4724  int GetDown () const { return m_down; }
4725 
4730  void SetUp (int m) alter { m_up = m; }
4735  int GetUp () const { return m_up; }
4736 
4741  void SetMoveDown (int m) alter { m_move_down = m; }
4746  int GetMoveDown () const { return m_move_down; }
4747 
4752  void SetMoveUp (int m) alter { m_move_up = m; }
4757  int GetMoveUp () const { return m_move_up; }
4758 
4763  void SetWhenInvisible (int m) alter { m_invisible = m; }
4768  int GetWhenInvisible () const { return m_invisible; }
4769 };
4770 
4772 
4778 class BBINFILETK_API TK_Matrix : public BBaseOpcodeHandler {
4779  protected:
4780  float m_matrix[16];
4781 
4782  public:
4784  TK_Matrix (unsigned char opcode)
4785  : BBaseOpcodeHandler (opcode) {}
4786 
4789  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
4790 
4791  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
4792  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
4793 
4795  void SetMatrix (float const * m) alter {
4796  int i; for (i=0; i<16; i++) m_matrix[i] = m[i];
4797  }
4799  float const * GetMatrix () const { return m_matrix; }
4801  float alter * GetMatrix () alter { return m_matrix; }
4802 };
4803 
4804 
4819 
4840 
4890 
4891  // alignment format change in 17.80.
4892 
4893  // old alignment enum choices in lower nibble
4907  // and justification in higher nibble
4912 
4913  // new format defines bits for "building" alignment setting
4914  TKO_Text_Alignment_Center = 0x00,
4915  TKO_Text_Alignment_Left = 0x01,
4916  TKO_Text_Alignment_Right = 0x02,
4917  TKO_Text_Alignment_Bottom = 0x04,
4918  TKO_Text_Alignment_Top = 0x08,
4919  TKO_Text_Alignment_Point = 0x10,
4920  // can't have left & right, or bottom & top, so all bits is good as an "unset" placeholder
4921  TKO_Text_Alignment_Unspecified = 0x1F,
4922  // and uses same justification but shifted a bit higher
4925  // and the high bit will be set
4926  TKO_Text_Alignment_New_Format = 0x80,
4927 
4928 
4929 
4932 
4935 };
4936 
4942 class BBINFILETK_API TK_Enumerated : public BBaseOpcodeHandler {
4943  protected:
4944  char m_index;
4945 
4946  public:
4948  TK_Enumerated (unsigned char opcode)
4949  : BBaseOpcodeHandler (opcode), m_index (0) {}
4950 
4953  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
4954 
4955  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
4956  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
4957 
4958  void SetIndex (int i) alter { m_index = (char)i; }
4960  int GetIndex () const { return (int)m_index; }
4961 };
4962 
4974 
4976 };
4977 // NOTE: any changes to this need to be reflected in generic_units_table in parse.cpp & HOpcodeHandler.cpp
4978 
4979 
4985 class BBINFILETK_API TK_Size : public BBaseOpcodeHandler {
4986  protected:
4987  float m_value;
4988  unsigned char m_units;
4989 
4990  public:
4992  TK_Size (unsigned char opcode)
4993  : BBaseOpcodeHandler (opcode), m_value (0.0f), m_units (TKO_Generic_Size_Unspecified) {}
4994 
4997  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
4998 
4999  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
5000  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
5001 
5003  void SetSize (float value, int units = TKO_Generic_Size_Unspecified) alter {
5004  m_value = (value > 0.0f) ? value : 0.0f;
5005  m_units = (m_value > 0.0f) ? (unsigned char) units : (unsigned char) TKO_Generic_Size_Unspecified;
5006  }
5008  float GetSize () const { return m_value; }
5010  int GetUnits () const { return m_units; }
5011 };
5012 
5017 class BBINFILETK_API TK_Linear_Pattern : public BBaseOpcodeHandler {
5018  protected:
5019  unsigned short m_pattern;
5020 
5021  public:
5023  TK_Linear_Pattern (unsigned char opcode)
5024  : BBaseOpcodeHandler (opcode), m_pattern (0) {}
5025 
5028  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5029 
5030  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
5031  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
5032 
5034  void SetPattern (int p) alter { m_pattern = (unsigned short)p; }
5036  int GetPattern () const { return (int)m_pattern; }
5037 };
5038 
5044 class BBINFILETK_API TK_Named : public BBaseOpcodeHandler {
5045  protected:
5047  char * m_name;
5048  int m_index;
5049 
5050  public:
5052  TK_Named (unsigned char opcode)
5053  : BBaseOpcodeHandler (opcode), m_name_length (0), m_name (0), m_index (0) {}
5054  ~TK_Named();
5055 
5058  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5059 
5060  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
5061  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
5062 
5063  void Reset () alter;
5064 
5066  void SetName (char const * name) alter;
5068  void SetName (int length) alter;
5070  char const * GetName () const { return m_name; }
5072  char alter * GetName () alter { return m_name; }
5073 
5075  void SetIndex (int i) alter { Reset(); m_index = i; }
5077  int GetIndex () const { return (int)m_index; }
5078 };
5079 
5080 
5081 
5088 class BBINFILETK_API TK_Streaming : public BBaseOpcodeHandler {
5089  protected:
5090  bool m_flag;
5091 
5092  public:
5095 
5098  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5099 
5100  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
5101  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
5102 
5103  void SetStreaming (bool s) alter { m_flag = s; }
5105  bool GetStreaming () const { return m_flag; }
5106 };
5107 
5110 
5116 class BBINFILETK_API TK_Conditions : public BBaseOpcodeHandler {
5117  protected:
5118  int m_length;
5119  char * m_string;
5121  public:
5123  TK_Conditions () : BBaseOpcodeHandler (TKE_Conditions), m_length (0), m_string (0) {}
5124  ~TK_Conditions();
5125 
5128  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5129 
5130  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
5131  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
5132 
5133  void Reset () alter;
5134 
5136  void SetConditions (char const * options) alter;
5138  void SetConditions (int length) alter;
5140  char const * GetConditions () const { return m_string; }
5142  char alter * GetConditions () alter { return m_string; }
5144  int GetLength() alter { return m_length; }
5145 };
5146 
5147 
5153 
5155 };
5156 
5157 
5160 
5165 class BBINFILETK_API TK_Conditional_Action : public BBaseOpcodeHandler {
5166  protected:
5167  short m_type;
5168  short m_options;
5169  int m_length;
5170  char * m_string;
5172  public:
5174  TK_Conditional_Action () : BBaseOpcodeHandler (TKE_Conditional_Action), m_length (0), m_string (0) {}
5176 
5179  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5180 
5181  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
5182  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
5183 
5184  void Reset () alter;
5185 
5187  void SetCondition (char const * options) alter;
5189  void SetCondition (int length) alter;
5191  char const * GetCondition () const { return m_string; }
5193  char alter * GetCondition () alter { return m_string; }
5195  int GetLength() alter { return m_length; }
5196 
5198  void SetAction (int at) alter { m_type = (short)at; }
5200  int GetAction () const { return (int)m_type; }
5202  void SetOptions (int at) alter { m_options = (short)at; }
5204  int GetOptions () const { return (int)m_options; }
5205 };
5206 
5209 
5215 class BBINFILETK_API TK_User_Options : public BBaseOpcodeHandler {
5216  protected:
5217  int m_length;
5218  char * m_string;
5223  void set_options (char const * options) alter;
5224  void set_options (int length) alter;
5225 
5226  public:
5228  TK_User_Options () : BBaseOpcodeHandler (TKE_User_Options), m_length (0), m_string (0),
5229  m_indices (0), m_unicode (0), m_index_data(0) {}
5230  ~TK_User_Options();
5231 
5234  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5235 
5236  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
5237  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
5238 
5239  void Reset () alter;
5240 
5242  void SetOptions (char const * options) alter { set_options (options); }
5244  void SetOptions (int length) alter { set_options (length); }
5246  char const * GetOptions () const { return m_string; }
5248  char alter * GetOptions () alter { return m_string; }
5250  int GetLength() alter { return m_length; }
5251 };
5252 
5255 
5261 class BBINFILETK_API TK_Unicode_Options : public BBaseOpcodeHandler {
5262  protected:
5263  int m_length;
5264  unsigned short * m_string;
5266  public:
5268  TK_Unicode_Options () : BBaseOpcodeHandler (TKE_Unicode_Options), m_length (0), m_string (0) {}
5269  ~TK_Unicode_Options();
5270 
5273  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5274 
5275  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
5276  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
5277 
5278  void Reset () alter;
5279 
5281  void SetOptions (unsigned short const * options) alter;
5283  void SetOptions (int length) alter;
5285  unsigned short const * GetOptions () const { return m_string; }
5287  unsigned short alter * GetOptions () alter { return m_string; }
5289  int GetLength() alter { return m_length; }
5290 };
5291 
5293 
5299 class BBINFILETK_API TK_User_Index : public BBaseOpcodeHandler {
5300  protected:
5301  int m_count;
5302  int * m_indices;
5303  HLONG * m_values;
5305  void set_indices (int count, int const * indices, POINTER_SIZED_INT const * values) alter;
5306  void set_indices (int count) alter;
5307 
5308  public:
5311  : BBaseOpcodeHandler (TKE_User_Index), m_count (0), m_indices (0), m_values (0), m_current_value(0) {}
5312  ~TK_User_Index();
5313 
5316  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5317 
5318  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
5319  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
5320 
5321  void Reset () alter;
5322 
5324  void SetIndices (int count, int const * indices, POINTER_SIZED_INT const * values) alter
5325  { set_indices (count, indices, values); }
5327  void SetIndices (int count) alter { set_indices (count); }
5329  int GetCount () const { return m_count; }
5331  int const * GetIndices () const { return m_indices; }
5333  int alter * GetIndices () alter { return m_indices; }
5335  HLONG const * GetValues () const { return m_values; }
5337  HLONG alter * GetValues () alter { return m_values; }
5338 };
5339 
5341 
5347 class BBINFILETK_API TK_User_Index_Data : public BBaseOpcodeHandler {
5348 protected:
5349  int m_count;
5350  int * m_indices;
5351  void ** m_values;
5352  int * m_sizes;
5353 
5355  void set_indices (int count, int const indices[], void const * values[], int const sizes[]) alter;
5356  void set_indices (int count) alter;
5357  void FreeMem () alter;
5358 
5359 public:
5362  : BBaseOpcodeHandler (TKE_User_Index_Data), m_count (0), m_indices (0), m_values (0), m_sizes(0), m_current_value(0) {}
5363  ~TK_User_Index_Data();
5364 
5367  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5368 
5369  void Reset () alter;
5370 
5372  void SetIndices (int count, int const indices[], void const * values[], int const sizes[]) alter {
5373  set_indices (count, indices, values, sizes);
5374  }
5375 
5377  void SetIndices (int count) alter { set_indices (count);}
5378 
5380  int GetCount () const { return m_count;}
5381 
5383  int const * GetIndices () const { return m_indices;}
5384 
5386  int alter * GetIndices () alter { return m_indices;}
5387 
5389  void ** const GetValues () const { return m_values;}
5390 
5392  void ** const GetValues () alter { return m_values;}
5393 
5395  int const * GetSizes () const { return m_sizes;}
5396 
5398  int alter * GetSizes () alter { return m_sizes;}
5399 };
5400 
5401 
5403 
5408 class BBINFILETK_API TK_User_Value : public BBaseOpcodeHandler {
5409  protected:
5410  HLONG m_value;
5411 
5412  public:
5415  : BBaseOpcodeHandler (TKE_User_Value), m_value (0) {}
5416 
5419  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5420 
5421  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
5422  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
5423 
5425  void SetValue (HLONG v) alter { m_value = v; }
5427  HLONG GetValue () const { return m_value; }
5428 };
5429 
5437 
5441 
5445 
5447 
5449 };
5450 
5452 
5457 class BBINFILETK_API2 TK_Camera : public BBaseOpcodeHandler {
5458  protected:
5462  float m_settings[14];
5463  unsigned char m_projection;
5464  int m_length;
5465  char * m_name;
5468  void set_name (char const * name) alter;
5469 
5470  void set_name (int length) alter;
5471 
5472  public:
5474  TK_Camera (unsigned char opcode = TKE_Camera)
5475  : BBaseOpcodeHandler (opcode), m_length (0), m_name (0) {
5476  int i;
5477  int count = (int)(sizeof(m_settings) / sizeof(m_settings[0]));
5478  for (i = 0; i < count; i++)
5479  m_settings[i] = 0;
5480  }
5481  ~TK_Camera();
5482 
5483  TK_Status Read (BStreamFileToolkit & tk) alter;
5484  TK_Status Write (BStreamFileToolkit & tk) alter;
5485  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5486 
5487  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
5488  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
5489 
5491  void SetPosition (float x, float y, float z) alter
5492  { m_settings[0] = x; m_settings[1] = y; m_settings[2] = z; }
5494  void SetPosition (float const * p) alter { SetPosition (p[0], p[1], p[2]); }
5496  float const * GetPosition () const { return &m_settings[0]; }
5498  void GetPosition (float *p) const { memcpy(p,GetPosition(),3*sizeof(float)); }
5499 
5501  void SetTarget (float x, float y, float z) alter
5502  { m_settings[3] = x; m_settings[4] = y; m_settings[5] = z; }
5504  void SetTarget (float const * t) alter { SetTarget (t[0], t[1], t[2]); }
5506  float const * GetTarget () const { return &m_settings[3]; }
5508  void GetTarget (float *t) const { memcpy(t,GetTarget(),3*sizeof(float)); }
5509 
5511  void SetUpVector (float x, float y, float z) alter
5512  { m_settings[6] = x; m_settings[7] = y; m_settings[8] = z; }
5514  void SetUpVector (float const * u) alter { SetUpVector (u[0], u[1], u[2]); }
5516  float const * GetUpVector () const { return &m_settings[6]; }
5518  void GetUpVector (float *u) const { memcpy(u,GetUpVector(),3*sizeof(float)); }
5519 
5521  void SetField (float w, float h) alter { m_settings[9] = w; m_settings[10] = h; }
5523  void SetField (float const * f) alter { SetField (f[0], f[1]); }
5525  float const * GetField () const { return &m_settings[9]; }
5527  void GetField (float *f) const { memcpy(f,GetField(),2*sizeof(float)); }
5528 
5530  void SetOblique (float h, float v) alter { m_settings[11] = h; m_settings[12] = v;
5531  m_projection &= ~TKO_Camera_Oblique_Mask;
5532  if (h != 0.0f) m_projection |= TKO_Camera_Oblique_Y;
5533  if (v != 0.0f) m_projection |= TKO_Camera_Oblique_Mask;
5534  }
5536  void SetOblique (float const * o) alter { SetOblique (o[0], o[1]); }
5538  float const * GetOblique () const { return &m_settings[11]; }
5540  void GetOblique (float *o) const { memcpy(o,GetOblique(),2*sizeof(float)); }
5541 
5543  void SetProjection (int p) alter { m_projection = (char)p; }
5545  int GetProjection () const { return (int)m_projection; }
5546 
5548  void SetNearLimit (float l) alter { m_settings[13] = l;
5549  m_projection &= ~TKO_Camera_Near_Limit;
5550  if (l != 0.0f) m_projection |= TKO_Camera_Near_Limit;
5551  }
5553  float GetNearLimit () const { return m_settings[13]; }
5554 
5556  void SetView (char const * name) alter { set_name (name); }
5558  void SetView (int length) alter { set_name (length); }
5560  char const * GetView () const { return m_name; }
5562  char alter * GetView () alter { return m_name; }
5563 };
5564 
5566 
5571 class BBINFILETK_API TK_Window : public BBaseOpcodeHandler {
5572  protected:
5573  float m_window[4];
5574 
5575  public:
5578  : BBaseOpcodeHandler (TKE_Window) {}
5579 
5582  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5583 
5584  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
5585  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
5586 
5588  void SetWindow (float l, float r, float b, float t) alter
5589  { m_window[0] = l; m_window[1] = r; m_window[2] = b; m_window[3] = t; }
5591  void SetWindow (float const * w) alter { SetWindow (w[0], w[1], w[2], w[3]); }
5593  float const * GetWindow () const { return m_window; }
5594 };
5595 
5596 
5602  TKO_Font_Names = 0x00000001,
5603  TKO_Font_Size = 0x00000002,
5605  TKO_Font_Transforms = 0x00000008,
5606  TKO_Font_Rotation = 0x00000010,
5607  TKO_Font_Slant = 0x00000020,
5608  TKO_Font_Width_Scale = 0x00000040,
5609  TKO_Font_Extended = 0x00000080,
5610  TKO_Font_Extended_Mask = 0xFFFFFF00, // internal use, indicates bits which require TKO_Font_Extended
5611  TKO_Font_Extended_Shift = 8, // internal use, indicatesshift of extended section
5612  TKO_Font_Extra_Space = 0x00000100,
5613  TKO_Font_Line_Spacing = 0x00000200,
5614  TKO_Font_Outline = 0x00000400,
5615  TKO_Font_Underline = 0x00000800,
5616  TKO_Font_Strikethrough = 0x00001000,
5617  TKO_Font_Overline = 0x00002000,
5619  TKO_Font_Extended2 = 0x00008000,
5623  TKO_Font_Fill_Edges = 0x00020000,
5624  TKO_Font_Bold = 0x00040000,
5625  TKO_Font_Italic = 0x00080000,
5626  TKO_Font_Renderer = 0x00100000,
5627  TKO_Font_Greeking_Mode = 0x00200000,
5628  TKO_Font_Preference = 0x00400000
5629 };
5630 
5631 
5632 #define TKO_Font_Size_Units TKO_Generic_Size_Units
5633 #define TKO_Font_Size_Object TKO_Generic_Size_Object
5634 #define TKO_Font_Size_Screen TKO_Generic_Size_Screen
5635 #define TKO_Font_Size_Window TKO_Generic_Size_Window
5636 #define TKO_Font_Size_Points TKO_Generic_Size_Points
5637 #define TKO_Font_Size_Pixels TKO_Generic_Size_Pixels
5638 #define TKO_Font_Size_Percent TKO_Generic_Size_Percent
5639 #define TKO_Font_Size_World TKO_Generic_Size_World
5640 
5641 
5650 };
5651 
5652 
5662 };
5663 
5673 };
5674 
5682 };
5683 
5685 
5692 class BBINFILETK_API TK_Text_Font : public BBaseOpcodeHandler {
5693  protected:
5694  int m_mask;
5695  int m_value;
5697  char * m_names;
5698  float m_size;
5699  float m_tolerance;
5700  float m_rotation;
5701  float m_slant;
5708  int m_renderers[2];
5709  int m_preferences[2];
5710  unsigned char m_size_units;
5711  unsigned char m_tolerance_units;
5712  unsigned char m_space_units;
5713  unsigned char m_greeking_units;
5714  unsigned char m_greeking_mode;
5715  unsigned char m_transforms;
5716  unsigned char m_renderer_cutoff_units;
5718 
5719  void set_names (int length) alter;
5720  void set_names (char const * names) alter;
5721 
5722  public:
5725  : BBaseOpcodeHandler (TKE_Text_Font), m_names_length (0), m_names (0) {}
5726  ~TK_Text_Font ();
5727 
5730  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5731 
5732  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
5733  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
5734 
5735  void Reset () alter;
5736 
5738  void SetMask (int m) alter {
5739  m_mask = m;
5740  if ((m & TKO_Font_Extended2_Mask) != 0)
5741  m_mask |= TKO_Font_Extended2;
5742  if ((m & TKO_Font_Extended_Mask) != 0)
5743  m_mask |= TKO_Font_Extended;
5744  }
5746  int GetMask () const { return m_mask; }
5747 
5749  void SetValue (int v) alter { m_value = v; }
5751  int GetValue () const { return m_value; }
5752 
5754  void SetNames (char const * names) alter { set_names (names); }
5756  void SetNames (int length) alter { set_names (length); }
5758  char const * GetNames () const { return m_names; }
5760  char alter * GetNames () alter { return m_names; }
5761 
5763  void SetSize (float s) alter { m_size = s; }
5765  float GetSize () const { return m_size; }
5766 
5768  void SetSizeUnits (int u) alter { m_size_units = (unsigned char)u; }
5770  int GetSizeUnits () const { return (int)m_size_units; }
5771 
5773  void SetTolerance (float t) alter { m_tolerance = t; }
5775  float GetTolerance () const { return m_tolerance; }
5776 
5778  void SetToleranceUnits (int u) alter { m_tolerance_units = (unsigned char)u; }
5780  int GetToleranceUnits () const { return (int)m_tolerance_units; }
5781 
5783  void SetRotation (float r) alter { m_rotation = r; }
5785  float GetRotation () const { return m_rotation; }
5786 
5788  void SetSlant (float s) alter { m_slant = s; }
5790  float GetSlant () const { return m_slant; }
5791 
5793  void SetWidthScale (float s) alter { m_width_scale = s; }
5795  float GetWidthScale () const { return m_width_scale; }
5796 
5798  void SetExtraSpace (float s) alter { m_extra_space = s; }
5800  float GetExtraSpace () const { return m_extra_space; }
5801 
5803  void SetExtraSpaceUnits (int u) alter { m_space_units = (unsigned char)u; }
5805  int GetExtraSpaceUnits () const { return (int)m_space_units; }
5806 
5808  void SetLineSpacing (float s) alter { m_line_spacing = s; }
5810  float GetLineSpacing () const { return m_line_spacing; }
5811 
5813  void SetTransforms (int t) alter { m_transforms = (unsigned char)t; }
5815  int GetTransforms () const { return (int)m_transforms; }
5816 
5818  void SetGreekingLimit (float s) alter { m_greeking_limit = s; }
5820  float GetGreekingLimit () const { return m_greeking_limit; }
5821 
5823  void SetGreekingLimitUnits (int u) alter { m_greeking_units = (unsigned char)u; }
5825  int GetGreekingLimitUnits () const { return (int)m_greeking_units; }
5826 
5828  void SetGreekingMode (int m) alter { m_greeking_mode = (unsigned char)m; }
5830  int GetGreekingMode () const { return (int)m_greeking_mode; }
5831 
5832 
5834  void SetRenderer (int r) alter { m_renderers[0] = m_renderers[1] = r; }
5836  int GetRenderer () const { return m_renderers[0]; }
5837 
5839  void SetRenderers (int r1, int r2) alter { m_renderers[0] = r1; m_renderers[1] = r2; }
5841  int const * GetRenderers () const { return m_renderers; }
5842 
5844  void SetRendererCutoff (float s) alter { m_renderer_cutoff = s; }
5846  float GetRendererCutoff () const { return m_renderer_cutoff; }
5847 
5849  void SetRendererCutoffUnits (int u) alter { m_renderer_cutoff_units = (unsigned char)u; }
5851  int GetRendererCutoffUnits () const { return (int)m_renderer_cutoff_units; }
5852 
5853 
5855  void SetPreference (int r) alter { m_preferences[0] = m_preferences[1] = r; }
5857  int GetPreference () const { return m_preferences[0]; }
5858 
5860  void SetPreferences (int r1, int r2) alter { m_preferences[0] = r1; m_preferences[1] = r2; }
5862  int const * GetPreferences () const { return m_preferences; }
5863 
5865  void SetPreferenceCutoff (float s) alter { m_preference_cutoff = s; }
5867  float GetPreferenceCutoff () const { return m_preference_cutoff; }
5868 
5870  void SetPreferenceCutoffUnits (int u) alter { m_preference_cutoff_units = (unsigned char)u; }
5872  int GetPreferenceCutoffUnits () const { return (int)m_preference_cutoff_units; }
5873 };
5874 
5876 
5878 
5893 };
5894 
5895 
5896 
5898 
5909 class BBINFILETK_API2 TK_Bounding : public BBaseOpcodeHandler {
5910  protected:
5911  float m_values[6];
5912  char m_type;
5913  bool m_is_valid;
5914  public:
5916  TK_Bounding (unsigned char opcode)
5917  : BBaseOpcodeHandler (opcode) {}
5919  TK_Bounding (unsigned char opcode, float * min, float * max)
5920  : BBaseOpcodeHandler (opcode), m_type (TKO_Bounding_Type_Cuboid), m_is_valid(true) {
5921  m_values[0] = min[0]; m_values[1] = min[1]; m_values[2] = min[2];
5922  m_values[3] = max[0]; m_values[4] = max[1]; m_values[5] = max[2];
5923  }
5925  TK_Bounding (unsigned char opcode, float * center, float radius)
5926  : BBaseOpcodeHandler (opcode), m_type (TKO_Bounding_Type_Sphere), m_is_valid(true) {
5927  m_values[0] = center[0]; m_values[1] = center[1]; m_values[2] = center[2];
5928  m_values[3] = radius;
5929  }
5930 
5931  TK_Status Read (BStreamFileToolkit & tk) alter;
5932  TK_Status Write (BStreamFileToolkit & tk) alter;
5933  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5934 
5935  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
5936  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
5937 };
5938 
5940 
5945  TKO_Light_Camera_Relative = 0x1
5946 };
5947 
5948 
5950 
5952 
5958 class BBINFILETK_API TK_Point : public BBaseOpcodeHandler {
5959  protected:
5960  float m_point[3];
5961  char m_options;
5962 
5963  public:
5965  TK_Point (unsigned char opcode)
5966  : BBaseOpcodeHandler (opcode) {
5967  m_point[0] = m_point[1] = m_point[2] = 0;
5968  m_options = 0;
5969  };
5970 
5973  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5974 
5975  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
5976  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
5977 
5978  void Reset(void) {
5979  m_point[0] = m_point[1] = m_point[2] = 0;
5980  m_options = 0;
5982  };
5983 
5984 
5985 
5987  void SetPoint (float x, float y, float z) alter { m_point[0] = x; m_point[1] = y; m_point[2] = z; }
5989  void SetPoint (float const * p) alter { SetPoint (p[0], p[1], p[2]); }
5991  float const * GetPoint () const { return m_point; }
5992 
5994  void SetOptions (int o) alter { m_options = (char)o; }
5996  int GetOptions () const { return (int)m_options; }
5997 };
5998 
5999 
6000 
6002 
6007 class BBINFILETK_API TK_Line : public BBaseOpcodeHandler {
6008  protected:
6010  float m_points[6];
6011 
6012  public:
6014  TK_Line (unsigned char opcode = TKE_Line)
6015  : BBaseOpcodeHandler (opcode) {}
6016 
6019  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6020 
6021  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
6022  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
6023 
6025  void SetPoints (float x1, float y1, float z1, float x2, float y2, float z2) alter {
6026  m_points[0] = x1; m_points[1] = y1; m_points[2] = z1;
6027  m_points[3] = x2; m_points[4] = y2; m_points[5] = z2;
6028  }
6030  void SetPoints (float const * s, float const * e) alter {
6031  SetPoints (s[0], s[1], s[2], e[0], e[1], e[2]);
6032  }
6034  void SetPoints (float const * p) alter { SetPoints (&p[0], &p[3]); }
6036  float const * GetPoints () const { return m_points; }
6037 };
6038 
6039 
6040 
6042 
6049 class BBINFILETK_API TK_Polypoint : public BBaseOpcodeHandler {
6050  protected:
6051  int m_count;
6053  float * m_points;
6056  void set_points (int count, float const * points = 0) alter { SetPoints (count, points); }
6057  public:
6061  TK_Polypoint (unsigned char opcode)
6062  : BBaseOpcodeHandler (opcode) { m_points = 0; m_allocated = m_count = 0; }
6063  ~TK_Polypoint();
6064 
6067  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6068 
6069  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
6070  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
6071 
6072  void Reset () alter;
6073 
6076  void SetPoints (int count, float const * points = 0) alter;
6078  float const * GetPoints () const { return m_points; }
6080  float alter * GetPoints () alter { return m_points; }
6082  int GetCount () const { return m_count; }
6083 };
6084 
6085 
6086 
6087 
6088 #define NC_HAS_WEIGHTS 0x01
6089 #define NC_HAS_KNOTS 0x02
6090 #define NC_HAS_START 0x04
6091 #define NC_HAS_END 0x08
6092 
6093 
6099 class BBINFILETK_API TK_NURBS_Curve : public BBaseOpcodeHandler {
6100  protected:
6101 
6102  unsigned char m_optionals;
6103  unsigned char m_degree;
6107  float *m_weights;
6108  float *m_knots;
6109  float m_start;
6110  float m_end;
6112  void set_curve (int degree, int control_count, float const * points = 0,
6114  float const * weights = 0, float const * knots = 0,
6115  float start = 0.0f, float end = 1.0f) alter;
6116  public:
6117  TK_NURBS_Curve();
6118  ~TK_NURBS_Curve();
6119 
6120  TK_Status Read (BStreamFileToolkit & tk) alter;
6121  TK_Status Write (BStreamFileToolkit & tk) alter;
6122  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6123 
6124  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
6125  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
6126 
6127  void Reset () alter;
6128 
6130  void SetCurve (int degree, int control_count, float const * points = 0,
6131  float const * weights = 0, float const * knots = 0,
6132  float start = 0.0f, float end = 1.0f) alter {
6133  set_curve (degree, control_count, points, weights, knots, start, end);
6134  }
6135 
6136  int GetDegree () const { return m_degree; }
6137  int GetCount () const { return m_control_point_count; }
6138  float const * GetPoints () const { return m_control_points; }
6139  float alter * GetPoints () alter { return m_control_points; }
6140  float const * GetWeights () const { return m_weights; }
6141  float alter * GetWeights () alter { return m_weights; }
6142  float const * GetKnots () const { return m_knots; }
6143  float alter * GetKnots () alter { return m_knots; }
6145  void SetStart (float s) alter { m_start = s; }
6146  float GetStart () const { return m_start; }
6147  void SetEnd (float e) alter { m_end = e; }
6148  float GetEnd () const { return m_end; }
6150  void SetOptions (int o) alter { m_optionals = (unsigned char)o; }
6151  int GetOptions () const { return m_optionals; }
6152 };
6153 
6154 
6155 
6156 
6157 
6158 #define NS_HAS_WEIGHTS 0x01
6159 #define NS_HAS_KNOTS 0x02
6160 #define NS_HAS_TRIMS 0x04
6161 
6162 #define NS_TRIM_END 0
6163 #define NS_TRIM_POLY 1
6164 #define NS_TRIM_CURVE 2
6165 #define NS_TRIM_COLLECTION 3
6166 #define NS_TRIM_LAST_KNOWN_TYPE 3
6167 
6168 #define NS_TRIM_KEEP 0x01
6169 #define NS_TRIM_HAS_WEIGHTS 0x02
6170 #define NS_TRIM_HAS_KNOTS 0x04
6171 
6172 
6179 class BBINFILETK_API HT_NURBS_Trim : public BBaseOpcodeHandler {
6180  friend class TK_NURBS_Surface;
6181  protected:
6182  //first 5 are relevant to polys and curves
6185  unsigned char m_type;
6186  int m_count;
6187  float * m_points;
6188  //next 6 are specific to curves
6189  unsigned char m_degree;
6190  unsigned char m_options;
6191  float * m_weights;
6192  float * m_knots;
6193  float m_start_u;
6194  float m_end_u;
6198  HT_NURBS_Trim();
6199  TK_Status read_collection(BStreamFileToolkit & tk);
6200  TK_Status write_collection(BStreamFileToolkit & tk);
6203  public:
6204  ~HT_NURBS_Trim();
6205  void SetPoly (int count, float const * points = 0) alter;
6206  void SetCurve (int degree, int control_count, float const * points = 0,
6207  float const * weights = 0, float const * knots = 0, float start_u = 0, float end_u = 1) alter;
6208  void SetCollection () alter;
6209  void SetOptions (int o) alter { m_options = (unsigned char)o; }
6210  void SetList (HT_NURBS_Trim *node) alter { m_list = node; }
6211  void SetNext (HT_NURBS_Trim *next) { m_next = next; }
6215 
6218 
6219  TK_Status read_collection_ascii(BStreamFileToolkit & tk) alter ;
6220  TK_Status write_collection_ascii(BStreamFileToolkit & tk) alter ;
6221 
6223  HT_NURBS_Trim * GetNext (void) { return m_next; }
6225  int GetType () const { return m_type; }
6227  int GetCount () const { return m_count; }
6229  float const * GetPoints () const { return m_points; }
6231  float alter * GetPoints () alter { return m_points; }
6233  int GetDegree () const { return m_degree; }
6235  int GetOptions () const { return m_options; }
6237  float const * GetWeights () const { return m_weights; }
6239  float alter * GetWeights () alter { return m_weights; }
6241  float const * GetKnots () const { return m_knots; }
6243  float alter * GetKnots () alter { return m_knots; }
6245  HT_NURBS_Trim const *GetList () const { return m_list; }
6247  HT_NURBS_Trim *GetList () alter { return m_list; }
6248 
6249 };
6250 
6252 
6257 class BBINFILETK_API TK_NURBS_Surface : public BBaseOpcodeHandler {
6258  protected:
6259  unsigned char m_optionals;
6260  unsigned char m_degree[2];
6261  int m_size[2];
6263  float * m_weights;
6264  float * m_u_knots;
6265  float * m_v_knots;
6271  public:
6272  TK_NURBS_Surface();
6273  ~TK_NURBS_Surface();
6274 
6277  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6278 
6279  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
6280  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
6281 
6282  void Reset () alter;
6284  void SetSurface (int u_degree, int v_degree, int u_size, int v_size,
6285  float const * points = 0, float const * weights = 0,
6286  float const * u_knots = 0, float const * v_knots = 0) alter;
6289  int GetUDegree () const { return m_degree[0]; }
6291  int GetVDegree () const { return m_degree[1]; }
6293  int GetUSize () const { return m_size[0]; }
6295  int GetVSize () const { return m_size[1]; }
6297  float const * GetPoints () const { return m_control_points; }
6299  float alter * GetPoints () alter { return m_control_points; }
6301  float const * GetWeights () const { return m_weights; }
6303  float alter * GetWeights () alter { return m_weights; }
6305  float const * GetUKnots () const { return m_u_knots; }
6307  float alter * GetUKnots () alter { return m_u_knots; }
6309  float const * GetVKnots () const { return m_v_knots; }
6311  float alter * GetVKnots () alter { return m_v_knots; }
6312 
6314  void SetOptions (int o) alter { m_optionals = (unsigned char)o; }
6316  int GetOptions () const { return m_optionals; }
6317 
6319  HT_NURBS_Trim * NewTrim (int type = NS_TRIM_END) alter;
6321  HT_NURBS_Trim * GetTrims () alter { return m_trims; }
6322 };
6323 
6325 
6330 class BBINFILETK_API TK_Area_Light : public BBaseOpcodeHandler {
6331  protected:
6332  int m_count;
6333  float * m_points;
6334  char m_options;
6335 
6337  void set_points (int count, float const * points = 0) alter;
6338 
6339  public:
6342  : BBaseOpcodeHandler (TKE_Area_Light), m_count (0), m_points (0), m_options (0) {}
6343  ~TK_Area_Light();
6344 
6347  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6348 
6349  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
6350  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
6351 
6352  void Reset () alter;
6353 
6358  void SetPoints (int count, float const * points = 0) alter { set_points (count, points); }
6360  float const * GetPoints () const { return m_points; }
6362  float alter * GetPoints () alter { return m_points; }
6364  int GetCount () const { return m_count; }
6365 
6367  void SetOptions (int o) alter { m_options = (char)o; }
6369  int GetOptions () const { return (int)m_options; }
6370 };
6371 
6372 
6379 
6383 
6386 
6388 
6390 };
6391 
6392 
6394 
6399 class BBINFILETK_API TK_Spot_Light : public BBaseOpcodeHandler {
6400  protected:
6401  float m_position[3];
6402  float m_target[3];
6403  float m_outer;
6404  float m_inner;
6406  char m_options;
6407 
6408  public:
6411  : BBaseOpcodeHandler (TKE_Spot_Light), m_options (0) {}
6412 
6415  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6416 
6417  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
6418  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
6419 
6421  void SetPosition (float x, float y, float z) alter
6422  { m_position[0] = x; m_position[1] = y; m_position[2] = z; }
6424  void SetPosition (float const * p) alter { SetPosition (p[0], p[1], p[2]); }
6426  float const * GetPosition () const { return m_position; }
6427 
6429  void SetTarget (float x, float y, float z) alter
6430  { m_target[0] = x; m_target[1] = y; m_target[2] = z; }
6432  void SetTarget (float const * t) alter { SetTarget (t[0], t[1], t[2]); }
6434  float const * GetTarget () const { return m_target; }
6435 
6437  void SetOuter (float o) alter { m_outer = o; }
6439  float GetOuter () const { return m_outer; }
6440 
6442  void SetInner (float i) alter { m_inner = i; }
6444  float GetInner () const { return m_inner; }
6445 
6447  void SetConcentration (float c) alter { m_concentration = c; }
6449  float GetConcentration () const { return m_concentration; }
6450 
6452  void SetOptions (int o) alter { m_options = (char)o; }
6454  int GetOptions () const { return (int)m_options; }
6455 };
6456 
6457 
6459 
6464 class BBINFILETK_API TK_Cutting_Plane : public BBaseOpcodeHandler {
6465  protected:
6466  float *m_planes;
6467  int m_count;
6468 
6469  public:
6472  : BBaseOpcodeHandler (TKE_Cutting_Plane), m_planes (0), m_count (0) {}
6473  ~TK_Cutting_Plane ();
6474 
6477  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6478 
6479  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
6480  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
6481 
6482  void Reset () alter;
6483 
6485  void SetPlanes (int count, float const * p=0) alter;
6486 
6488  void SetPlane (float a, float b, float c, float d) alter
6489  { SetPlanes(1);
6490  m_planes[0] = a; m_planes[1] = b; m_planes[2] = c; m_planes[3] = d; }
6492  void SetPlane (float const * p) alter { SetPlanes (1, p); }
6494  float const * GetPlane () const { return m_planes; }
6495 
6497  float const * GetPlanes () const { return m_planes; }
6499  int GetCount () const { return m_count; }
6501 };
6502 
6503 
6509 };
6510 
6512 
6519 class BBINFILETK_API TK_Circle : public BBaseOpcodeHandler {
6520  protected:
6521  float m_start[3];
6522  float m_middle[3];
6523  float m_end[3];
6524  float m_center[3];
6525  unsigned char m_flags;
6527  public:
6529  TK_Circle (unsigned char opcode)
6530  : BBaseOpcodeHandler (opcode), m_flags (0) {}
6531 
6534  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6535 
6536  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
6537  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
6538 
6539  void Reset () alter;
6540 
6542  void SetStart (float x, float y, float z) alter {
6543  m_start[0] = x; m_start[1] = y; m_start[2] = z;
6544  }
6546  void SetStart (float const * s) alter {
6547  SetStart (s[0], s[1], s[2]);
6548  }
6550  void SetMiddle (float x, float y, float z) alter {
6551  m_middle[0] = x; m_middle[1] = y; m_middle[2] = z;
6552  }
6554  void SetMiddle (float const * m) alter {
6555  SetMiddle (m[0], m[1], m[2]);
6556  }
6558  void SetEnd (float x, float y, float z) alter {
6559  m_end[0] = x; m_end[1] = y; m_end[2] = z;
6560  }
6562  void SetEnd (float const * e) alter {
6563  SetEnd (e[0], e[1], e[2]);
6564  }
6566  void SetCenter (float x, float y, float z) alter {
6567  m_center[0] = x; m_center[1] = y; m_center[2] = z;
6568  m_flags = TKO_Circular_Center;
6569  }
6571  void SetCenter (float const * c) alter {
6572  if (c) SetCenter (c[0], c[1], c[2]);
6573  else m_flags = 0;
6574  }
6576  void SetPoints (float const * s, float const * m, float const * e,
6577  float const * c = 0) alter {
6578  SetStart (s); SetMiddle (m); SetEnd (e); SetCenter (c);
6579  }
6581  float const * GetStart () const { return m_start; }
6583  float const * GetMiddle () const { return m_middle; }
6585  float const * GetEnd () const { return m_end; }
6587  float const * GetCenter () const { return (m_flags & TKO_Circular_Center) ? m_center : 0; }
6588 };
6589 
6590 
6592 
6599 class BBINFILETK_API TK_Ellipse : public BBaseOpcodeHandler {
6600  protected:
6601  float m_center[3];
6602  float m_major[3];
6603  float m_minor[3];
6604  float m_limits[2];
6606  public:
6608  TK_Ellipse (unsigned char opcode)
6609  : BBaseOpcodeHandler (opcode) {}
6610 
6613  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6614 
6615  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
6616  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
6617 
6619  void SetCenter (float x, float y, float z) alter {
6620  m_center[0] = x; m_center[1] = y; m_center[2] = z;
6621  }
6623  void SetCenter (float const * s) alter { SetCenter (s[0], s[1], s[2]); }
6625  float const * GetCenter () const { return m_center; }
6626 
6628  void SetMajor (float x, float y, float z) alter {
6629  m_major[0] = x; m_major[1] = y; m_major[2] = z;
6630  }
6632  void SetMajor (float const * m) alter { SetMajor (m[0], m[1], m[2]); }
6634  float const * GetMajor () const { return m_major; }
6635 
6637  void SetMinor (float x, float y, float z) alter {
6638  m_minor[0] = x; m_minor[1] = y; m_minor[2] = z;
6639  }
6641  void SetMinor (float const * m) alter { SetMinor (m[0], m[1], m[2]); }
6643  float const * GetMinor () const { return m_minor; }
6644 
6646  void SetLimits (float s, float e) alter {
6647  m_limits[0] = s; m_limits[1] = e;
6648  }
6650  float const * GetLimits () const { return m_limits; }
6651 };
6652 
6653 
6655 
6662 class BBINFILETK_API TK_Sphere : public BBaseOpcodeHandler {
6663  protected:
6664  unsigned char m_flags;
6665  float m_center[3];
6666  float m_radius;
6667  float m_axis[3];
6668  float m_ortho[3];
6670  public:
6673  : BBaseOpcodeHandler (TKE_Sphere) { Reset(); }
6674 
6677  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6678 
6679  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
6680  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
6681 
6682  void Reset () alter;
6683 
6685  void SetCenter (float x, float y, float z) alter {
6686  m_center[0] = x; m_center[1] = y; m_center[2] = z;
6687  }
6689  void SetCenter (float const * s) alter { SetCenter (s[0], s[1], s[2]); }
6691  float const * GetCenter () const { return m_center; }
6692 
6693 
6695  void SetRadius (float r) alter { m_radius = r; }
6697  float GetRadius () const { return m_radius; }
6698 
6700  void SetAxis (float x, float y, float z) alter {
6701  m_axis[0] = x; m_axis[1] = y; m_axis[2] = z;
6702  if (x != 0.0f || y != 1.0f || z != 0.0f)
6703  m_flags &= ~TKSPH_NULL_AXIS;
6704  }
6706  void SetAxis (float const * s) alter { SetAxis (s[0], s[1], s[2]); }
6708  float const * GetAxis () const { return m_axis; }
6709 
6710 
6712  void SetOrtho (float x, float y, float z) alter {
6713  m_ortho[0] = x; m_ortho[1] = y; m_ortho[2] = z;
6714  if (x != 1.0f || y != 0.0f || z != 0.0f)
6715  m_flags &= ~TKSPH_NULL_AXIS;
6716  }
6718  void SetOrtho (float const * s) alter { SetOrtho (s[0], s[1], s[2]); }
6720  float const * GetOrtho () const { return m_ortho; }
6721 
6725  enum Flags {
6726  TKSPH_NONE = 0x0,
6727  TKSPH_NULL_AXIS = 0x1
6728  };
6729 
6730 };
6731 
6732 
6734 
6741 class BBINFILETK_API TK_Cylinder : public BBaseOpcodeHandler {
6742  protected:
6743  float m_axis[6];
6744  float m_radius;
6745  unsigned char m_flags;
6747  public:
6750  : BBaseOpcodeHandler (TKE_Cylinder) {}
6751 
6754  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6755 
6756  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
6757  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
6758 
6760  void SetAxis (float x1, float y1, float z1, float x2, float y2, float z2) alter {
6761  m_axis[0] = x1; m_axis[1] = y1; m_axis[2] = z1;
6762  m_axis[3] = x2; m_axis[4] = y2; m_axis[5] = z2;
6763  }
6765  void SetAxis (float const * s, float const * e) alter { SetAxis (s[0], s[1], s[2], e[0], e[1], e[2]); }
6767  void SetAxis (float const * a) alter { SetAxis (&a[0], &a[3]); }
6769  float const * GetAxis () const { return m_axis; }
6771  float const * GetStart () const { return &m_axis[0]; }
6773  float const * GetEnd () const { return &m_axis[3]; }
6774 
6776  void SetRadius (float r) alter { m_radius = r; }
6778  float GetRadius () const { return m_radius; }
6779 
6781  void SetCaps (int f) alter { m_flags = (unsigned char)f; }
6783  int GetCaps () const { return m_flags; }
6784 
6789  TKCYL_NONE = 0,
6790  TKCYL_FIRST = 1,
6791  TKCYL_SECOND = 2,
6792  TKCYL_BOTH = 3
6793  };
6794 
6795 };
6796 
6797 
6799 
6806 #include "BPolyhedron.h"
6807 
6808 class BBINFILETK_API TK_PolyCylinder : public TK_Polyhedron {
6809  protected:
6810  int m_count;
6811  float * m_points;
6813  float * m_radii;
6814  unsigned char m_flags;
6815  float m_normals[6];
6817  public:
6820  : TK_Polyhedron (TKE_PolyCylinder), m_count (0), m_points (0), m_radius_count (0), m_radii (0) {}
6821  ~TK_PolyCylinder();
6822 
6825  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6826 
6827  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
6828  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
6829 
6830  virtual void Reset () alter;
6831 
6836  TKCYL_NORMAL_FIRST = 0x04,
6837  TKCYL_NORMAL_SECOND = 0x08,
6838  TKCYL_OPTIONALS = 0x10
6839  };
6840 
6845  void SetPoints (int count, float const * points = 0) alter;
6847  float const * GetPoints () const { return m_points; }
6849  float alter * GetPoints () alter { return m_points; }
6851  int GetCount () const { return m_count; }
6852 
6853 
6858  void SetRadii (int count, float const * radii = 0) alter;
6860  void SetRadius (float radius) alter { SetRadii (1, &radius); }
6862  float const * GetRadii () const { return m_radii; }
6864  float alter * GetRadii () alter { return m_radii; }
6866  int GetRadiusCount () const { return m_radius_count; }
6867 
6868 
6870  void SetCaps (int f) alter { m_flags &= ~0x03; m_flags |= f; }
6872  int GetCaps () const { return m_flags & 0x03; }
6873 
6875  void SetEndNormal (int index, float const * normal = 0) alter {
6876  int mask = 0x40 << index;
6877  if (normal == 0)
6878  m_flags &= ~mask;
6879  else {
6880  m_flags |= mask;
6881  m_normals[3*index+0] = normal[0];
6882  m_normals[3*index+1] = normal[1];
6883  m_normals[3*index+2] = normal[2];
6884  }
6885  }
6887  float const * GetEndNormal (int index) const {
6888  int mask = 0x40 << index;
6889  if (m_flags & mask)
6890  return &m_normals[3*index];
6891  else
6892  return 0;
6893  }
6894 };
6895 
6896 
6898 
6904 class BBINFILETK_API TK_Grid : public BBaseOpcodeHandler {
6905  protected:
6906  char m_type;
6907  float m_origin[3];
6908  float m_ref1[3];
6909  float m_ref2[3];
6910  int m_counts[2];
6912  public:
6915  : BBaseOpcodeHandler (TKE_Grid) {}
6916 
6919  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6920 
6921  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
6922  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
6923 
6925  void SetOrigin (float x, float y, float z) alter {
6926  m_origin[0] = x; m_origin[1] = y; m_origin[2] = z;
6927  }
6929  void SetOrigin (float const * o) alter { SetOrigin (o[0], o[1], o[2]); }
6931  float const * GetOrigin () const { return m_origin; }
6932 
6934  void SetRef1 (float x, float y, float z) alter {
6935  m_ref1[0] = x; m_ref1[1] = y; m_ref1[2] = z;
6936  }
6938  void SetRef1 (float const * r) alter { SetRef1 (r[0], r[1], r[2]); }
6940  float const * GetRef1 () const { return m_ref1; }
6941 
6943  void SetRef2 (float x, float y, float z) alter {
6944  m_ref2[0] = x; m_ref2[1] = y; m_ref2[2] = z;
6945  }
6947  void SetRef2 (float const * r) alter { SetRef2 (r[0], r[1], r[2]); }
6949  float const * GetRef2 () const { return m_ref2; }
6950 
6952  void SetCounts (int c1, int c2) alter {
6953  m_counts[0] = c1; m_counts[1] = c2;
6954  }
6956  int const * GetCounts () const { return m_counts; }
6957 
6959  void SetType (int t) { m_type = (char)t; }
6961  int GetType () const { return (int)m_type; }
6962 };
6963 
6965 
6981 };
6982 
6989 };
6990 
7004 };
7005 
7013 };
7014 
7015 
7028  TKO_Character_Rotation_Fixed = 0x0100,
7032 };
7033 
7036  char * name;
7037 
7038  float color[3];
7039  float size;
7042  float slant;
7043  float rotation;
7044  float width_scale;
7045 
7046  unsigned short mask;
7047  unsigned short value;
7048 
7049  unsigned char size_units;
7050  unsigned char vertical_offset_units;
7051  unsigned char horizontal_offset_units;
7052 };
7053 
7054 
7056 
7062 class BBINFILETK_API TK_Text : public BBaseOpcodeHandler {
7063  protected:
7064  float m_position[3];
7065  int m_length;
7067  char * m_string;
7068  unsigned char m_encoding;
7069  unsigned char m_options;
7070  unsigned char m_region_options;
7071  unsigned char m_region_fit;
7072  unsigned char m_region_count;
7073  float m_region[4*3];
7074  int m_count;
7077  int m_tmp;
7080  void set_string (char const * string) alter;
7081  void set_string (int length) alter;
7082 
7083  public:
7085  TK_Text (unsigned char opcode);
7086  ~TK_Text();
7087 
7090  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7091 
7092  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
7093  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
7094 
7095  void Reset () alter;
7096 
7098  void SetString (char const * string) alter { set_string (string); }
7100  void SetString (unsigned short const * string) alter;
7102  void SetString (unsigned int const * string) alter;
7104  void SetString (int length) alter { set_string (length); }
7106  char const * GetString () const { return m_string; }
7108  char alter * GetString () alter { return m_string; }
7109 
7111  void SetPosition (float x, float y, float z) alter
7112  { m_position[0] = x; m_position[1] = y; m_position[2] = z; }
7114  void SetPosition (float const * p) alter { SetPosition (p[0], p[1], p[2]); }
7116  float const * GetPosition () const { return &m_position[0]; }
7117 
7119  void SetEncoding (int e) alter { m_encoding = (unsigned char)e; }
7121  int GetEncoding () const { return (int)m_encoding; }
7122 
7124  void SetTextRegion (int c, float const * p, int o=0, int f=0) alter;
7126  int GetTextRegionCount () const { return (int)m_region_count; }
7128  float const * GetTextRegionPoints () const { return m_region; }
7130  int GetTextRegionOptions () const { return (int)m_region_options; }
7132  int GetTextRegionFitting () const { return (int)m_region_fit; }
7133 };
7134 
7136 
7138 
7145  TKO_Font_HOOPS_Stroked // data represents a HOOPS stroked font definition
7146 };
7147 
7148 
7150 
7156 class BBINFILETK_API TK_Font : public BBaseOpcodeHandler {
7157  protected:
7158  char * m_name;
7159  char * m_lookup;
7160  char * m_bytes;
7163  int m_length;
7164  unsigned char m_type;
7165  unsigned char m_encoding;
7167  void set_bytes (int size, char const * bytes = 0) alter;
7170  void set_name (char const * string) alter;
7172  void set_name (int length) alter;
7174  void set_lookup (char const * string) alter;
7176  void set_lookup (int length) alter;
7177 
7178  public:
7180  TK_Font () : BBaseOpcodeHandler (TKE_Font),
7181  m_name (0), m_lookup (0), m_bytes (0), m_name_length (0), m_lookup_length (0), m_length (0),
7182  m_type (0), m_encoding (0) {}
7183  ~TK_Font();
7184 
7187  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7188 
7189  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
7190  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
7191 
7192  void Reset () alter;
7193 
7194 
7196  void SetType (int t) alter { m_type = (unsigned char)t;}
7198  int GetType () const { return (int)m_type; }
7199 
7204  void SetBytes (int size, char const * bytes = 0) alter { set_bytes (size, bytes); }
7206  int GetBytesCount () const { return m_length; }
7208  char const * GetBytes () const { return m_bytes; }
7210  char alter * GetBytes () alter { return m_bytes; }
7211 
7213  void SetName (char const * string) alter { set_name (string); }
7215  void SetName (int length) alter { set_name (length); }
7217  char const * GetName () const { return m_name; }
7219  char alter * GetName () alter { return m_name; }
7220 
7222  void SetLookup (char const * string) alter { set_lookup (string); }
7224  void SetLookup (int length) alter { set_lookup (length); }
7226  char const * GetLookup () const { return m_lookup; }
7228  char alter * GetLookup () alter { return m_lookup; }
7229 
7231  void SetEncoding (int e) alter { m_encoding = (unsigned char)e;}
7233  int GetEncoding () const { return (int)m_encoding; }
7234 };
7235 
7237 
7256 
7260 
7262  TKO_Image_Discard = 0x00000200,
7263  TKO_Image_Options_Mask = 0xFFFFFFF0,
7264 
7266 };
7267 
7268 
7270 extern const int TK_Image_Bytes_Per_Pixel[];
7271 
7283 };
7284 
7285 #ifndef DOXYGEN_SHOULD_SKIP_THIS
7286 
7287 class BBINFILETK_API2 TK_Image_Data_Buffer {
7288  protected:
7289  unsigned char * m_buffer;
7290  unsigned int m_allocated;
7291  unsigned int m_used;
7292 
7293  public:
7295  TK_Image_Data_Buffer() : m_buffer (0), m_allocated (0), m_used (0) {}
7296  ~TK_Image_Data_Buffer();
7297 
7298  void Resize (unsigned int size) alter;
7299  void Expand (unsigned int size) alter { Resize (Size() + size); }
7300  void Reset () alter;
7301 
7302  unsigned int const & Size () const { return m_allocated; }
7303  unsigned int const & Used () const { return m_used; }
7304  unsigned int alter & Used () alter { return m_used; }
7305  unsigned char const * Buffer () const { return m_buffer; }
7306  unsigned char alter * Buffer () alter { return m_buffer; }
7307 };
7308 
7309 
7310 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
7311 
7312 
7314 
7320 class BBINFILETK_API2 TK_Image : public BBaseOpcodeHandler {
7321  protected:
7322  char * m_bytes;
7323  char * m_name;
7324  char * m_reference;
7325  float m_position[3];
7326  int m_size[2];
7330  unsigned char m_format;
7331  unsigned int m_options;
7332  unsigned char m_compression;
7333  unsigned char m_bytes_format;
7334  float m_explicit_size[2];
7335  unsigned char m_explicit_units[2];
7336  TK_Image_Data_Buffer m_work_area[2];
7341  void set_data (int size, char const * bytes = 0, unsigned char data_format = TKO_Compression_None) alter;
7344  void set_name (char const * string) alter;
7346  void set_name (int length) alter;
7347 
7349  TK_Status compress_image (BStreamFileToolkit & tk, int active_work_area = 0) alter;
7351  TK_Status decompress_image (BStreamFileToolkit & tk, int active_work_area = 0) alter;
7353  TK_Status read_jpeg_header () alter;
7354 
7355  public:
7357  TK_Image ();
7358  ~TK_Image();
7359 
7360  TK_Status Read (BStreamFileToolkit & tk) alter;
7361  TK_Status Write (BStreamFileToolkit & tk) alter;
7362  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7363 
7364  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
7365  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
7366  TK_Status compress_image_ascii (BStreamFileToolkit & tk) alter;
7367 
7368 
7369  void Reset () alter;
7370 
7375  void SetBytes (int size, char const * bytes = 0,
7376  unsigned char data_format = TKO_Compression_None) alter
7377  { set_data (size, bytes, data_format); }
7379  char const * GetBytes () const { return m_bytes; }
7381  char alter * GetBytes () alter { return m_bytes; }
7382 
7384  void SetName (char const * string) alter { set_name (string); }
7386  void SetName (int length) alter { set_name (length); }
7388  char const * GetName () const { return m_name; }
7390  char alter * GetName () alter { return m_name; }
7391 
7393  void SetReference (char const * string) alter;
7395  void SetReference (int length) alter;
7397  char const * GetReference () const { return m_reference; }
7399  char alter * GetReference () alter { return m_reference; }
7400 
7402  void SetPosition (float x, float y, float z) alter
7403  { m_position[0] = x; m_position[1] = y; m_position[2] = z; }
7405  void SetPosition (float const * p) alter { SetPosition (p[0], p[1], p[2]); }
7407  float const * GetPosition () const { return &m_position[0]; }
7408 
7410  void SetSize (int w, int h) alter { m_size[0] = w; m_size[1] = h; }
7412  void SetSize (int const * s) alter { m_size[0] = s[0]; m_size[1] = s[1]; }
7414  int const * GetSize () const { return m_size; }
7415 
7417  void SetFormat (int f) alter { m_format = (unsigned char)(f & TKO_Image_Format_Mask); }
7419  int GetFormat () const { return (int)m_format; }
7420 
7422  void SetOptions (int f) alter { m_options = (unsigned char)(f & TKO_Image_Options_Mask); }
7424  int GetOptions () const { return (int)m_options; }
7425 
7427  void SetCompression (int c) alter { m_compression = (unsigned char)c; }
7429  int GetCompression () const { return (int)m_compression; }
7430 };
7431 
7432 
7434 
7435 
7441  TKO_Texture_Tiling = 0x00000002,
7443  TKO_Texture_Decimation = 0x00000008,
7449  TKO_Texture_Layout = 0x00000200,
7450  TKO_Texture_Transform = 0x00000400,
7452  TKO_Texture_Caching = 0x00001000,
7453  TKO_Texture_DownSample = 0x00002000,
7455  TKO_Texture_Extended = 0x00008000,
7456  TKO_Texture_Extended_Mask = 0xFFFF0000, // internal use, indicates bit which require TKO_Texture_Extended
7457  TKO_Texture_Extended_Shift = 16, // internal use, indicates shift of extended section
7458  TKO_Texture_Decal = 0x00010000,
7459  TKO_Texture_Modulate = 0x00020000,
7462  TKO_Texture_Shader = 0x00100000,
7464  TKO_Texture_Camera = 0x00400000,
7466 };
7467 
7488 };
7489 
7490 
7499 };
7500 
7501 
7511 };
7512 
7522 };
7523 
7524 
7537 };
7538 
7539 
7552 };
7553 
7554 
7561 };
7562 
7563 
7565 
7571 class BBINFILETK_API2 TK_Texture : public BBaseOpcodeHandler {
7572  protected:
7573  char * m_name;
7575  char * m_image;
7576  char * m_camera;
7581  int m_flags;
7592  char m_layout;
7593  char m_tiling;
7594  float m_value_scale[2];
7595  int m_source_dimensions[3];
7596  char * m_transform;
7600  void set_name (int length) alter;
7601  void set_name (char const * name) alter;
7602  void set_image (int length) alter;
7603  void set_image (char const * image) alter;
7604  void set_transform (int length) alter;
7605  void set_transform (char const * transform) alter;
7606 
7607  public:
7609  TK_Texture () : BBaseOpcodeHandler (TKE_Texture),
7610  m_name (0), m_shader_source(0), m_image (0), m_camera (0),
7611  m_name_length (0), m_shader_source_length(0), m_image_length (0), m_camera_length (0),
7612  m_transform (0) {
7613  Reset();
7614  }
7615  ~TK_Texture();
7616 
7617  TK_Status Read (BStreamFileToolkit & tk) alter;
7618  TK_Status Write (BStreamFileToolkit & tk) alter;
7619  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7620 
7621  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
7622  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
7623 
7624  void Reset () alter;
7625 
7627  void SetName (char const * name) alter { set_name (name); }
7629  void SetName (int length) alter { set_name (length); }
7631  char const * GetName () const { return m_name; }
7633  char alter * GetName () alter { return m_name; }
7634 
7636  void SetShaderSource (char const * shader_source) alter;
7638  void SetShaderSource (int length) alter;
7640  char const * GetShaderSource () const { return m_shader_source; }
7642  char alter * GetShaderSource () alter { return m_shader_source; }
7643 
7645  void SetImage (char const * image) alter { set_image (image); }
7647  void SetImage (int length) alter { set_image (length); }
7649  char const * GetImage () const { return m_image; }
7651  char alter * GetImage () alter { return m_image; }
7652 
7654  void SetCamera (char const * camera) alter;
7656  void SetCamera (int length) alter;
7658  char const * GetCamera () const { return m_camera; }
7660  char alter * GetCamera () alter { return m_camera; }
7661 
7663  void SetFlags (int f) alter {
7664  m_flags = f;
7665  if ((f & TKO_Texture_Extended_Mask) != 0)
7666  m_flags |= TKO_Texture_Extended;
7667  }
7669  int GetFlags () const { return m_flags; }
7670 
7672  void SetParameterSource (int p) alter { m_param_source = (char)p; }
7674  int GetParameterSource () const { return (int)m_param_source; }
7675 
7677  void SetInterpolation (int p) alter { m_interpolation = (char)p; }
7679  int GetInterpolation () const { return (int)m_interpolation; }
7680 
7682  void SetDecimation (int p) alter { m_decimation = (char)p; }
7684  int GetDecimation () const { return (int)m_decimation; }
7685 
7687  void SetRedMapping (int p) alter { m_red_mapping = (char)p; }
7689  int GetRedMapping () const { return (int)m_red_mapping; }
7690 
7692  void SetGreenMapping (int p) alter { m_green_mapping = (char)p; }
7694  int GetGreenMapping () const { return (int)m_green_mapping; }
7695 
7697  void SetBlueMapping (int p) alter { m_blue_mapping = (char)p; }
7699  int GetBlueMapping () const { return (int)m_blue_mapping; }
7700 
7702  void SetAlphaMapping (int p) alter { m_alpha_mapping = (char)p; }
7704  int GetAlphaMapping () const { return (int)m_alpha_mapping; }
7705 
7707  void SetParameterFunction (int p) alter { m_param_function = (char)p; }
7709  int GetParameterFunction () const { return (int)m_param_function; }
7710 
7712  void SetLayout (int p) alter { m_layout = (char)p; }
7714  int GetLayout () const { return (int)m_layout; }
7715 
7717  void SetTiling (int p) alter { m_tiling = (char)p; }
7719  int GetTiling () const { return (int)m_tiling; }
7720 
7722  void SetValueScale (float v1, float v2) alter { m_value_scale[0] = v1; m_value_scale[1] = v2; }
7724  float const * GetValueScale () const { return m_value_scale; }
7725 
7727  void SetApplicationMode (int p) alter { m_apply_mode = (char)p; }
7729  int GetApplicationMode () const { return (int)m_tiling; }
7730 
7732  void SetParameterOffset (int p) alter { m_param_offset = (char)p; }
7734  int GetParameterOffset () const { return (int)m_param_offset; }
7735 
7740  void SetTransform (char const * transform) alter { set_transform (transform); }
7745  void SetTransform (int length) alter { set_transform (length); }
7747  char const * GetTransform () const { return m_transform; }
7749  char alter * GetTransform () alter { return m_transform; }
7750 };
7751 
7752 
7759 
7761 };
7762 
7764 
7770 class BBINFILETK_API2 TK_Thumbnail : public BBaseOpcodeHandler {
7771  protected:
7772  unsigned char * m_bytes;
7773  int m_size[2];
7774  unsigned char m_format;
7776  public:
7778  TK_Thumbnail() : BBaseOpcodeHandler (TKE_Thumbnail), m_bytes (0), m_format (TKO_Thumbnail_Invalid) {}
7779  ~TK_Thumbnail();
7780 
7781  TK_Status Read (BStreamFileToolkit & tk) alter;
7782  TK_Status Write (BStreamFileToolkit & tk) alter;
7783  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7784 
7785  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
7786  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
7787 
7788  TK_Status Execute (BStreamFileToolkit & tk) alter;
7789  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant) alter;
7790  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special) alter
7791  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
7792  void Reset () alter;
7793 
7798  void SetBytes (int size, unsigned char const * bytes = 0) alter;
7800  unsigned char const * GetBytes () const { return m_bytes; }
7802  unsigned char alter * GetBytes () alter { return m_bytes; }
7803 
7805  void SetSize (int w, int h) alter { m_size[0] = w; m_size[1] = h; }
7807  void SetSize (int const * s) alter { m_size[0] = s[0]; m_size[1] = s[1]; }
7809  int const * GetSize () const { return m_size; }
7810 
7812  void SetFormat (int f) alter { m_format = (unsigned char)f; }
7814  int GetFormat () const { return (int)m_format; }
7815 };
7816 
7817 
7819 
7821 
7826 class BBINFILETK_API2 TK_Glyph_Definition : public BBaseOpcodeHandler {
7827  protected:
7829  int m_size;
7830  char * m_name;
7831  char * m_data;
7833  public:
7835  TK_Glyph_Definition () : BBaseOpcodeHandler (TKE_Glyph_Definition),
7836  m_name_length (0), m_size (0),
7837  m_name (0), m_data (0) {}
7839 
7840  TK_Status Read (BStreamFileToolkit & tk) alter;
7841  TK_Status Write (BStreamFileToolkit & tk) alter;
7842  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7843 
7844  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
7845  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
7846 
7847  void Reset () alter;
7848 
7850  void SetName (char const * name) alter;
7852  void SetName (int length) alter;
7854  char const * GetName () const { return m_name; }
7856  char alter * GetName () alter { return m_name; }
7857 
7859  void SetDefinition (int size, char const * data = 0) alter;
7861  int GetDefinitionSize () const { return m_size; }
7863  char const * GetDefinition () const { return m_data; }
7865  char alter * GetDefinition () alter { return m_data; }
7866 };
7867 
7868 
7870 
7875 class BBINFILETK_API2 TK_Named_Style_Def : public BBaseOpcodeHandler {
7876  protected:
7878  char * m_name;
7881  char * m_segment;
7885  bool m_follow;
7886 
7887  public:
7890  m_name_length (0), m_name (0),
7891  m_segment_length (0), m_segment (0) ,
7892  m_key(-1), m_referee(0), m_follow(true) {}
7893  ~TK_Named_Style_Def();
7894 
7895  TK_Status Read (BStreamFileToolkit & tk) alter;
7896  TK_Status Write (BStreamFileToolkit & tk) alter;
7897  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7898 
7899  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
7900  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
7901 
7902  void Reset () alter;
7903 
7905  void SetName (char const * name) alter;
7907  void SetName (int length) alter;
7909  char const * GetName () const { return m_name; }
7911  char alter * GetName () alter { return m_name; }
7912 
7917  void SetSegment (char const * segment) alter;
7922  void SetSegment (int length) alter;
7926  char const * GetSegment () const { return m_segment; }
7931  char alter * GetSegment () alter { return m_segment; }
7932 };
7933 
7935 
7940 class BBINFILETK_API2 TK_Line_Style : public BBaseOpcodeHandler {
7941  protected:
7944  char * m_name;
7945  char * m_definition;
7947  public:
7949  TK_Line_Style () : BBaseOpcodeHandler (TKE_Line_Style),
7950  m_name_length (0), m_definition_length (0),
7951  m_name (0), m_definition (0) {}
7952  ~TK_Line_Style();
7953 
7954  TK_Status Read (BStreamFileToolkit & tk) alter;
7955  TK_Status Write (BStreamFileToolkit & tk) alter;
7956  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7957 
7958  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
7959  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
7960 
7961  void Reset () alter;
7962 
7964  void SetName (char const * name) alter;
7966  void SetName (int length) alter;
7968  char const * GetName () const { return m_name; }
7970  char alter * GetName () alter { return m_name; }
7971 
7973  void SetDefinition (char const * def) alter;
7975  void SetDefinition (int length) alter;
7977  char const * GetDefinition () const { return m_definition; }
7979  char alter * GetDefinition () alter { return m_definition; }
7980 };
7981 
7983 
7985 
7990 class BBINFILETK_API TK_Clip_Rectangle : public BBaseOpcodeHandler {
7991  protected:
7992  char m_options;
7993  float m_rect[4];
7995  public:
7998  : BBaseOpcodeHandler (TKE_Clip_Rectangle), m_options (0) {}
7999 
8002  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8003 
8004  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
8005  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
8006 
8007  void Reset () alter;
8008 
8010  void SetRectangle (float left, float right, float bottom, float top) alter
8011  { m_rect[0] = left; m_rect[1] = right; m_rect[2] = bottom; m_rect[3] = top; }
8013  void SetRectangle (float const * rect) alter
8014  { SetRectangle (rect[0], rect[1], rect[2], rect[3]); }
8016  float const * GetRectangle () const { return m_rect; }
8017 
8019  void SetOptions (int o) alter { m_options = (char)o; }
8021  int GetOptions () const { return (int)m_options; }
8022 };
8023 
8025 
8035 };
8036 
8038 
8043 class BBINFILETK_API TK_Clip_Region : public BBaseOpcodeHandler {
8044  protected:
8045  char m_options;
8046  int m_count;
8047  float * m_points;
8049  public:
8052  : BBaseOpcodeHandler (TKE_Clip_Region), m_options (0), m_count (0), m_points (0) {}
8053  ~TK_Clip_Region();
8054 
8057  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8058 
8059  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
8060  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
8061 
8062  void Reset () alter;
8063 
8068  void SetPoints (int count, float const * points = 0) alter;
8070  float const * GetPoints () const { return m_points; }
8072  float alter * GetPoints () alter { return m_points; }
8074  int GetCount () const { return m_count; }
8075 
8077  void SetOptions (int o) alter { m_options = (char)o; }
8079  int GetOptions () const { return (int)m_options; }
8080 };
8081 
8082 
8084 
8086 
8102 class BBINFILETK_API2 TK_User_Data : public BBaseOpcodeHandler {
8103  protected:
8104  int m_size;
8105  unsigned char * m_data;
8108  void set_data (int size, unsigned char const * bytes = 0) alter;
8110 
8111  public:
8114  : BBaseOpcodeHandler (TKE_Start_User_Data), m_size (0), m_data (0), m_buffer_size(0) {}
8115  ~TK_User_Data();
8116 
8117  TK_Status Read (BStreamFileToolkit & tk) alter;
8118  TK_Status Write (BStreamFileToolkit & tk) alter;
8119  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8120 
8121  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
8122  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
8123 
8124  TK_Status Execute (BStreamFileToolkit & tk) alter;
8125  void Reset () alter;
8126 
8131  void SetUserData (int size, unsigned char const * bytes = 0) alter { set_data (size, bytes); }
8133  unsigned char const * GetUserData () const { return m_data; }
8135  unsigned char alter * GetUserData () alter { return m_data; }
8137  int GetSize () const { return m_size; }
8138 
8140  void Resize (int size) alter;
8141 
8143  void SetSize (int size) alter;
8144 };
8145 
8146 
8148 
8150 
8162 class BBINFILETK_API2 TK_Material : public BBaseOpcodeHandler {
8163  protected:
8165 
8168  struct vlist_s *m_data;
8169 
8170  public:
8172  TK_Material () : BBaseOpcodeHandler (TKE_Material), m_total_size(0), m_data(0) {}
8173  ~TK_Material();
8174 
8175  TK_Status Read (BStreamFileToolkit & tk) alter;
8176  TK_Status Write (BStreamFileToolkit & tk) alter;
8177  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8178  void Reset () alter;
8179 
8180  TK_Status PushUserData (char const *buffer, int buffer_size, bool tally_total_size = true);
8181  TK_Status GetBlock (char const **ptr, int *buffer_size);
8182 };
8183 
8185 
8190 class BBINFILETK_API TK_XML : public BBaseOpcodeHandler {
8191  protected:
8192  int m_size;
8193  char * m_data;
8195  public:
8197  TK_XML (): BBaseOpcodeHandler (TKE_XML), m_size (0), m_data (0) {}
8198  ~TK_XML();
8199 
8200  TK_Status Read (BStreamFileToolkit & tk) alter;
8201  TK_Status Write (BStreamFileToolkit & tk) alter;
8202  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8203 
8204  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
8205  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
8206 
8207  TK_Status Execute (BStreamFileToolkit & tk) alter;
8208  void Reset () alter;
8209 
8214  void SetXML (int size, char const * data = 0) alter;
8218  void AppendXML (int size, char const * data = 0) alter;
8220  char const * GetXML () const { return m_data; }
8222  char alter * GetXML () alter { return m_data; }
8224  int GetSize () const { return m_size; }
8225 };
8226 
8227 
8228 
8230 
8236 class BBINFILETK_API TK_URL : public BBaseOpcodeHandler {
8237  protected:
8238  int m_length;
8240  char * m_string;
8242  public:
8245  m_length (0), m_allocated (0), m_string (0) {}
8246  ~TK_URL();
8247 
8248  TK_Status Read (BStreamFileToolkit & tk) alter;
8249  TK_Status Write (BStreamFileToolkit & tk) alter;
8250  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8251 
8252  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
8253  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
8254 
8255  void Reset () alter;
8256 
8258  void SetString (char const * string) alter;
8260  void SetString (int length) alter;
8262  char const * GetString () const { return m_string; }
8264  char alter * GetString () alter { return m_string; }
8265 };
8266 
8267 
8269 
8275 class BBINFILETK_API TK_External_Reference : public BBaseOpcodeHandler {
8276  protected:
8277  int m_length;
8279  char * m_string;
8281  public:
8282  TK_External_Reference () : BBaseOpcodeHandler (TKE_External_Reference),
8283  m_length (0), m_allocated (0), m_string (0) {}
8285 
8286  TK_Status Read (BStreamFileToolkit & tk) alter;
8287  TK_Status Write (BStreamFileToolkit & tk) alter;
8288  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8289 
8290  TK_Status ReadAscii (BStreamFileToolkit & tk) alter;
8291  TK_Status WriteAscii (BStreamFileToolkit & tk) alter;
8292 
8293  TK_Status Execute (BStreamFileToolkit & tk) alter;
8294  void Reset () alter;
8295 
8297  void SetString (char const * string) alter;
8299  void SetString (int length) alter;
8301  char const * GetString () const { return m_string; }
8303  char alter * GetString () alter { return m_string; }
8304 };
8305 
8306 
8308 
8314 class BBINFILETK_API TK_External_Reference_Unicode : public BBaseOpcodeHandler {
8315  protected:
8316  int m_length;
8318  wchar_t * m_string;
8320  public:
8321  TK_External_Reference_Unicode () : BBaseOpcodeHandler (TKE_External_Reference_Unicode),
8322  m_length (0), m_allocated (0), m_string (0) {}
8324 
8325  TK_Status Read (BStreamFileToolkit & tk) alter;
8326  TK_Status Write (BStreamFileToolkit & tk) alter;
8327  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8328 
8329  TK_Status Execute (BStreamFileToolkit & tk) alter;
8330  void Reset () alter;
8331 
8333  void SetString (__wchar_t const * string) alter;
8334 #ifdef _MSC_VER
8335  void SetString (unsigned short const * string) alter;
8336 #endif
8337 
8338  void SetString (int length) alter;
8340  wchar_t const * GetString () const { return m_string; }
8342  wchar_t alter * GetString () alter { return m_string; }
8343 };
8344 
8345 
8346 #endif //BOPCODE_HANDLER
8347 
bool GetFollow() alter
Definition: BOpcodeHandler.h:1291
lighting interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2301
char ** m_isoline_patterns
for internal use only.
Definition: BOpcodeHandler.h:2870
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4395
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4386
float GetPreferenceCutoff() const
Definition: BOpcodeHandler.h:5867
the offset from the standard position
Definition: BOpcodeHandler.h:7022
float * m_control_points
Definition: BOpcodeHandler.h:6106
float const * GetRGB() const
Definition: BOpcodeHandler.h:1989
int m_nurbs_options_value
For internal use only.
Definition: BOpcodeHandler.h:2900
type for 'quantization' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2509
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2630
int GetMask(int index=0) const
Definition: BOpcodeHandler.h:3006
int GetTechnology() const
Definition: BOpcodeHandler.h:3031
internal use, indicates bits which require TKO_Geo_Extended2
Definition: BOpcodeHandler.h:1678
char m_isoline_position_type
for internal use only.
Definition: BOpcodeHandler.h:2864
BBaseOpcodeHandler * m_indices
Definition: BOpcodeHandler.h:5219
short m_forced_color_simple_reflection_value
For internal use only.
Definition: BOpcodeHandler.h:2837
""
Definition: BOpcodeHandler.h:4874
int GetOptions() const
Definition: BOpcodeHandler.h:5996
ID_Key last_key(BStreamFileToolkit &tk) const
obsolete
Definition: BOpcodeHandler.h:640
refer to HC_Set_Visibility
Definition: BOpcodeHandler.h:4931
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1705
int GetSelectionLevel() const
Definition: BOpcodeHandler.h:4551
int GetFlags() const
Definition: BOpcodeHandler.h:7669
void SetType(int t)
Definition: BOpcodeHandler.h:6959
virtual bool NeedsContext(BStreamFileToolkit &tk) const
Definition: BOpcodeHandler.h:209
unsigned char const * GetUserData() const
Definition: BOpcodeHandler.h:8133
int GetMaximumExtentMode() const
Definition: BOpcodeHandler.h:4505
TK_Clip_Rectangle()
Definition: BOpcodeHandler.h:7997
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4325
int m_name_length
Definition: BOpcodeHandler.h:7828
TK_Grid()
Definition: BOpcodeHandler.h:6914
char alter * GetEmissionName() alter
Definition: BOpcodeHandler.h:1910
void SetColorMarkerLockMask(int m) alter
Definition: BOpcodeHandler.h:3200
void add_segment(BStreamFileToolkit &tk, ID_Key key) alter
for internal use only
Definition: BOpcodeHandler.h:634
int m_name_length
Definition: BOpcodeHandler.h:7328
refer to HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:4823
short m_forced_color_vertex_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:2833
type for 'shadow map' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2460
float alter * GetValues() alter
Definition: BOpcodeHandler.h:2205
char m_maximum_extent_level
internal use; maximum extent level
Definition: BOpcodeHandler.h:4429
int GetFlags() alter
Definition: BOpcodeHandler.h:961
int GetLodMinimumTriangleCount() const
Definition: BOpcodeHandler.h:3975
refer to HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:4838
int GetFormat() const
Definition: BOpcodeHandler.h:7419
float GetCutGeometryTolerance() const
Definition: BOpcodeHandler.h:4143
//
Definition: BOpcodeHandler.h:837
int const * GetSize() const
Definition: BOpcodeHandler.h:7809
int GetToleranceUnits() const
Definition: BOpcodeHandler.h:5780
short m_lock_color_text_mask
For internal use only.
Definition: BOpcodeHandler.h:2772
""
Definition: BOpcodeHandler.h:4880
lighting interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2378
self-explanatory
Definition: BOpcodeHandler.h:2692
void fix(short *s, int n)
for internal use only
Definition: BOpcodeHandler.h:566
bool GetLogging() const
Definition: BStreamFileToolkit.h:945
float * m_v_knots
Definition: BOpcodeHandler.h:6265
void SetGreekingMode(int m) alter
Definition: BOpcodeHandler.h:5828
TK_Bounding(unsigned char opcode, float *min, float *max)
Definition: BOpcodeHandler.h:5919
void SetSimpleShadowResolution(int m) alter
Definition: BOpcodeHandler.h:4166
channel m_bump
internal use
Definition: BOpcodeHandler.h:1782
char alter * GetName() alter
Definition: BOpcodeHandler.h:7219
unsigned short m_unsigned_short
temporary
Definition: BOpcodeHandler.h:79
void SetColorVertexContrastForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3833
refer to HC_Define_Texture
Definition: BOpcodeHandler.h:7472
char m_space
internal use
Definition: BOpcodeHandler.h:2003
short m_lock_color_cut_edge_value
For internal use only.
Definition: BOpcodeHandler.h:2799
int GetOffset() const
Definition: BOpcodeHandler.h:1629
transform position only
Definition: BOpcodeHandler.h:5648
void SetRenderers(int r1, int r2) alter
Definition: BOpcodeHandler.h:5839
char alter * GetString() alter
Definition: BOpcodeHandler.h:2227
""
Definition: BOpcodeHandler.h:4873
void SetTransform(char const *transform) alter
Definition: BOpcodeHandler.h:7740
TKO_Character_Attributes
Definition: BOpcodeHandler.h:7019
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4384
float const * GetField() const
Definition: BOpcodeHandler.h:5525
int GetCount() const
Definition: BOpcodeHandler.h:6364
TK_Status PutData(BStreamFileToolkit &tk, int const *i, int n) alter
Definition: BOpcodeHandler.h:385
int m_forced_color_mask
For internal use only.
Definition: BOpcodeHandler.h:2804
char const * GetCamera() const
Definition: BOpcodeHandler.h:7658
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4322
type for 'simple shadow' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2445
void SetSize(float s) alter
Definition: BOpcodeHandler.h:5763
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4904
short m_lock_color_line_value
For internal use only.
Definition: BOpcodeHandler.h:2769
short m_forced_color_marker_value
For internal use only.
Definition: BOpcodeHandler.h:2813
color interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2292
void decrease_nesting(BStreamFileToolkit &tk, int amount=1) alter
for internal use only
Definition: BOpcodeHandler.h:651
the offset from the standard position
Definition: BOpcodeHandler.h:7030
int GetRadiusCount() const
Definition: BOpcodeHandler.h:6866
int const * GetIndices() const
Definition: BOpcodeHandler.h:5383
char const * GetTransmissionName() const
Definition: BOpcodeHandler.h:1893
refer to HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:4816
int GetForcedLockValue() const
Definition: BOpcodeHandler.h:3482
short m_forced_color_line_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:2828
Definition: BOpcodeHandler.h:2157
void SetEnvironmentName(char const *name) alter
Definition: BOpcodeHandler.h:1913
int m_count
internal use
Definition: BOpcodeHandler.h:6332
int m_lookup_length
Definition: BOpcodeHandler.h:7162
int m_shader_source_length
Definition: BOpcodeHandler.h:7578
void SetNURBSOptionsValue(int v) alter
Definition: BOpcodeHandler.h:3939
void SetName(char const *string) alter
Definition: BOpcodeHandler.h:7384
unsigned short mask
specifies which settings are active (i.e. the attributes for which we have an opinion at this point) ...
Definition: BOpcodeHandler.h:7046
self-explanatory
Definition: BOpcodeHandler.h:1737
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2367
int m_current_value
for internal use only
Definition: BOpcodeHandler.h:5304
bool NeedsTag() const
Definition: BOpcodeHandler.h:191
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4356
void SetColorFaceLockValue(int v) alter
Definition: BOpcodeHandler.h:3142
void SetBytes(int size, char const *bytes=0) alter
Definition: BOpcodeHandler.h:7204
int GetColorVertexLockMask() const
Definition: BOpcodeHandler.h:3343
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2334
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2607
TK_Header()
Definition: BOpcodeHandler.h:914
""
Definition: BOpcodeHandler.h:7507
refer to HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:4831
char alter * GetSegment() alter
Definition: BOpcodeHandler.h:1142
self-explanatory
Definition: BOpcodeHandler.h:6973
float const * GetWeights() const
Definition: BOpcodeHandler.h:6237
unsigned char m_degree
Definition: BOpcodeHandler.h:6189
int GetColorWindowForcedLockMask() const
Definition: BOpcodeHandler.h:3654
TKO_Texture_Option_Bits
Definition: BOpcodeHandler.h:7439
short m_forced_color_vertex_value
For internal use only.
Definition: BOpcodeHandler.h:2825
Capping_Options
Definition: BOpcodeHandler.h:6835
int m_simple_reflection_blur
For internal use only.
Definition: BOpcodeHandler.h:2948
char const * GetView() const
Definition: BOpcodeHandler.h:5560
refer to HC_Set_Rendering_Options
Definition: BOpcodeHandler.h:4933
unsigned char m_tolerance_units
for internal use only
Definition: BOpcodeHandler.h:5711
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1709
int GetColorLineContrastLockValue() const
Definition: BOpcodeHandler.h:3400
unsigned char m_opcode
The opcode being handled by this particular object.
Definition: BOpcodeHandler.h:64
float const * GetPlane() const
Definition: BOpcodeHandler.h:6494
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2360
void SetGreekingLimitUnits(int u) alter
Definition: BOpcodeHandler.h:5823
int GetTextRegionFitting() const
Definition: BOpcodeHandler.h:7132
common/shared items; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1640
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2393
float GetHlrFaceDisplacement() const
Definition: BOpcodeHandler.h:3919
""
Definition: BOpcodeHandler.h:4847
internal use, indicates shift for placement of extended section
Definition: BOpcodeHandler.h:1650
int GetDebug() const
Definition: BOpcodeHandler.h:3041
int GetNURBSCurveBudget() const
Definition: BOpcodeHandler.h:3945
float alter * GetVKnots() alter
Definition: BOpcodeHandler.h:6311
""
Definition: BOpcodeHandler.h:4862
float const * GetAmbientUpVector() const
Definition: BOpcodeHandler.h:4275
void set_channel_rgb(channel alter &c, float r, float g, float b, int which_channel=-1) alter
internal use
Definition: BOpcodeHandler.h:1788
char m_char
temporary
Definition: BOpcodeHandler.h:81
type for 'antialias' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2521
short m_lock_color_face_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:2776
TK_Status PutData(BStreamFileToolkit &tk, unsigned short const *s, int n) alter
Definition: BOpcodeHandler.h:428
""
Definition: BOpcodeHandler.h:7484
type for NURBS curve options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2651
int GetColorTextContrastLockMask() const
Definition: BOpcodeHandler.h:3458
void SetAxis(float const *s) alter
Definition: BOpcodeHandler.h:6706
int GetGeometry() const
Definition: BOpcodeHandler.h:2144
type for cylinder tesselation value; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2657
type for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2547
int m_size
Definition: BOpcodeHandler.h:8104
self-explanatory
Definition: BOpcodeHandler.h:2671
short m_lock_color_window_mask
For internal use only.
Definition: BOpcodeHandler.h:2774
refer to HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:4829
int GetLodAlgorithm() const
Definition: BOpcodeHandler.h:3971
unsigned short m_pattern
internal use
Definition: BOpcodeHandler.h:5019
channel m_specular
internal use
Definition: BOpcodeHandler.h:1777
TKO_Map_Format
Definition: BOpcodeHandler.h:2155
env map
Definition: BOpcodeHandler.h:1742
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1658
TK_Status GetData(BStreamFileToolkit &tk, short &s) alter
Definition: BOpcodeHandler.h:282
float vertical_offset
offset, positive or negative, from the standard position. units are specified separately in vertical_...
Definition: BOpcodeHandler.h:7040
mask for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2538
void SetDiffuse(float r, float g, float b) alter
Definition: BOpcodeHandler.h:1838
""
Definition: BOpcodeHandler.h:7475
""
Definition: BOpcodeHandler.h:4886
char * m_shader_source
Definition: BOpcodeHandler.h:7574
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2351
int m_length
internal use
Definition: BOpcodeHandler.h:977
short m_lock_color_window_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:2778
""
Definition: BOpcodeHandler.h:4853
type for contour options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2556
short m_type
Definition: BOpcodeHandler.h:5167
type for 'cut geometry' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2432
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2370
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4355
int m_surface_trim_budget
For internal use only.
Definition: BOpcodeHandler.h:2904
char alter * GetOptions() alter
Definition: BOpcodeHandler.h:5248
type for transparency field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2414
Handles the TKE_Reopen_Segment opcode.
Definition: BOpcodeHandler.h:1184
int m_current_level
the index of the level currently in progress.
Definition: BOpcodeHandler.h:1444
char m_options
for internal use only
Definition: BOpcodeHandler.h:6406
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2631
void SetOptions(int o) alter
Definition: BOpcodeHandler.h:6452
""
Definition: BOpcodeHandler.h:7443
HT_NURBS_Trim * m_list
Definition: BOpcodeHandler.h:6195
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2606
void SetMaximumExtent(int c) alter
Definition: BOpcodeHandler.h:4501
int m_highest_level
keeps track of highest level lod that has been seen so far
Definition: BOpcodeHandler.h:1440
self-explanatory
Definition: BOpcodeHandler.h:6970
void SetWhenInvisible(int m) alter
Definition: BOpcodeHandler.h:4763
wchar_t unicode string
Definition: BOpcodeHandler.h:6980
float m_surface_max_facet_angle
For internal use only.
Definition: BOpcodeHandler.h:2906
unsigned short m_mask
internal use
Definition: BOpcodeHandler.h:4579
void SetColorEdgeContrastForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3775
float m_radius
Definition: BOpcodeHandler.h:6744
int GetColorForcedLockValue() const
Definition: BOpcodeHandler.h:3527
void adjust_written(BStreamFileToolkit &tk, int count) alter
for internal use only
Definition: BOpcodeHandler.h:647
int GetColorLineContrastLockMask() const
Definition: BOpcodeHandler.h:3389
float m_hlr_weight
for internal use only.
Definition: BOpcodeHandler.h:2855
char * m_name
Definition: BOpcodeHandler.h:7878
short m_lock_color_back_value
For internal use only.
Definition: BOpcodeHandler.h:2781
type for NURBS curve options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2639
TKO_Texture_Filters
Definition: BOpcodeHandler.h:7528
TK_Status PutData(BStreamFileToolkit &tk, short const &s) alter
Definition: BOpcodeHandler.h:437
void SetColorTextContrastForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3867
int m_nurbs_options_mask
For internal use only.
Definition: BOpcodeHandler.h:2899
float * m_control_points
Definition: BOpcodeHandler.h:6262
void SetColorForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3522
extended bit for HLR suboptions; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2543
void SetGeneralDisplacement(int d) alter
Definition: BOpcodeHandler.h:3054
short m_lock_color_marker_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:2788
type for contour options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2554
void SetKey(ID_Key k) alter
Definition: BOpcodeHandler.h:1525
""
Definition: BOpcodeHandler.h:7496
Handles the TKE_Close_Segment opcode.
Definition: BOpcodeHandler.h:1156
int GetPattern() const
Definition: BOpcodeHandler.h:5036
void SetSimpleReflectionVisibilityMask(int m) alter
Definition: BOpcodeHandler.h:4246
Handles the TKE_Geometry_Options opcode.
Definition: BOpcodeHandler.h:4577
char alter * GetName() alter
Definition: BOpcodeHandler.h:7633
HT_NURBS_Trim * GetList() alter
Definition: BOpcodeHandler.h:6247
float const * GetCenter() const
Definition: BOpcodeHandler.h:6691
int m_up
internal use; specifies what geometry is selectable on mouse button up. For internal use only...
Definition: BOpcodeHandler.h:4683
TKO_Heuristic_Bits
Definition: BOpcodeHandler.h:4317
int m_debug_allocated
Definition: BOpcodeHandler.h:68
short m_lock_color_vertex_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:2791
void SetSegment(int length) alter
Definition: BOpcodeHandler.h:1132
int GetOrientationCount() const
Definition: BOpcodeHandler.h:4612
int m_forced_visibility_mask
For internal use only.
Definition: BOpcodeHandler.h:2842
mask of bits requiring extended
Definition: BOpcodeHandler.h:4335
self-explanatory
Definition: BOpcodeHandler.h:2712
void SetColorMarkerForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3614
int GetColorVertexLockValue() const
Definition: BOpcodeHandler.h:3354
TK_Unavailable(char opcode)
Definition: BOpcodeHandler.h:893
void SetBumpName(char const *name) alter
Definition: BOpcodeHandler.h:1922
void SetForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3480
""
Definition: BOpcodeHandler.h:7482
void SetExtraSpace(float s) alter
Definition: BOpcodeHandler.h:5798
int GetUSize() const
Definition: BOpcodeHandler.h:6293
refer to HC_Define_Texture
Definition: BOpcodeHandler.h:7506
type for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2531
int m_allocated
Definition: BOpcodeHandler.h:8317
float alter * GetLodThresholds() alter
Definition: BOpcodeHandler.h:4049
void SetNames(int length) alter
Definition: BOpcodeHandler.h:5756
void SetColorWindowForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3660
type for 'simple reflection' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2474
void SetOptions(int o) alter
Definition: BOpcodeHandler.h:6314
channel m_transmission
internal use
Definition: BOpcodeHandler.h:1779
Handles the TKE_Cylinder opcode.
Definition: BOpcodeHandler.h:6741
""
Definition: BOpcodeHandler.h:4855
float m_radius
Definition: BOpcodeHandler.h:6666
void Reset(void)
Definition: BOpcodeHandler.h:5978
char const * GetBytes() const
Definition: BOpcodeHandler.h:7379
void SetExtraSpaceUnits(int u) alter
Definition: BOpcodeHandler.h:5803
Handles the TKE_Color_By_Value opcode.
Definition: BOpcodeHandler.h:1999
unsigned char m_flags
Definition: BOpcodeHandler.h:6664
TK_Status GetData(BStreamFileToolkit &tk, unsigned char *b, int n) alter
Definition: BOpcodeHandler.h:270
oblique y setting
Definition: BOpcodeHandler.h:5442
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1672
void fix_out(float *f, int n)
for internal use only
Definition: BOpcodeHandler.h:597
char * m_string
internal use
Definition: BOpcodeHandler.h:2171
type for 'simple reflection' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2472
TK_Sphere()
Definition: BOpcodeHandler.h:6672
void SetSpecular(float const *rgb) alter
Definition: BOpcodeHandler.h:1855
HLONG const * GetValues() const
Definition: BOpcodeHandler.h:5335
char alter * GetName() alter
Definition: BOpcodeHandler.h:7911
image is native JPEG data
Definition: BOpcodeHandler.h:7249
float GetGreekingLimit() const
Definition: BOpcodeHandler.h:5820
#define alter
complementary to const, indicates we thought about it instead of a forgotten "const" ...
Definition: BStream.h:225
unsigned char m_region_count
Definition: BOpcodeHandler.h:7072
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1718
type for 'simple shadow' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2442
void SetIndex(int i) alter
Definition: BOpcodeHandler.h:2098
TK_Conditional_Action()
Definition: BOpcodeHandler.h:5174
char const * GetImage() const
Definition: BOpcodeHandler.h:7649
void SetVector(float const *v) alter
Definition: BOpcodeHandler.h:4525
unsigned char alter * GetUserData() alter
Definition: BOpcodeHandler.h:8135
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2583
HLONG alter * GetValues() alter
Definition: BOpcodeHandler.h:5337
void SetName(char const *string) alter
Definition: BOpcodeHandler.h:7213
slant, specified in degrees clockwise
Definition: BOpcodeHandler.h:7025
int GetCount() const
Definition: BOpcodeHandler.h:6499
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2561
Handles the TKE_Termination and TKE_Pause opcodes.
Definition: BOpcodeHandler.h:1039
self-explanatory
Definition: BOpcodeHandler.h:6387
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4326
unsigned short m_contour_options
for internal use only.
Definition: BOpcodeHandler.h:2859
type for NURBS curve options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2635
self-explanatory
Definition: BOpcodeHandler.h:2682
refer to HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:4814
int GetMaximumExtentLevel() const
Definition: BOpcodeHandler.h:4509
TK_Thumbnail()
Definition: BOpcodeHandler.h:7778
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2329
int GetLodNumCutoffs() const
Definition: BOpcodeHandler.h:4063
char m_options
relevant to TKE_Distant_Light and TKE_Local_Light only. See TKO_Light_Options.
Definition: BOpcodeHandler.h:5961
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2568
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2613
empty placeholder image, no real data, possible reference instead
Definition: BOpcodeHandler.h:7282
int GetLodClamp() const
Definition: BOpcodeHandler.h:3983
int GetTransparentHSR() const
Definition: BOpcodeHandler.h:3021
void SetSimpleReflectionPlane(float a, float b, float c, float d) alter
Definition: BOpcodeHandler.h:4229
lighting interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2302
int GetHSR() const
Definition: BOpcodeHandler.h:3016
self-explanatory
Definition: BOpcodeHandler.h:7277
int GetLength() alter
Definition: BOpcodeHandler.h:5250
float m_end_u
Definition: BOpcodeHandler.h:6194
void SetMajor(float x, float y, float z) alter
Definition: BOpcodeHandler.h:6628
refer to HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:4815
void SetPoint(float x, float y, float z) alter
Definition: BOpcodeHandler.h:5987
void SetRadius(float r) alter
Definition: BOpcodeHandler.h:6776
void SetColorWindowContrastForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3706
short m_forced_color_text_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:2834
texture interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2287
extra item for selectability; refer to HC_Set_Selectability for a description
Definition: BOpcodeHandler.h:1689
self-explanatory
Definition: BOpcodeHandler.h:7278
float m_cut_geometry_tolerance
For internal use only.
Definition: BOpcodeHandler.h:2931
float * m_points
Definition: BOpcodeHandler.h:6187
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4900
bool validate_count(int count, int limit=1<< 24) const
Definition: BOpcodeHandler.h:680
void SetRef1(float x, float y, float z) alter
Definition: BOpcodeHandler.h:6934
self-explanatory
Definition: BOpcodeHandler.h:2702
void SetTarget(float x, float y, float z) alter
Definition: BOpcodeHandler.h:6429
""
Definition: BOpcodeHandler.h:4858
char alter * GetName() alter
Definition: BOpcodeHandler.h:5072
int m_cond_allocated
Definition: BOpcodeHandler.h:1308
void SetRef2(float const *r) alter
Definition: BOpcodeHandler.h:6947
void Revisit(BStreamFileToolkit &tk, float priority=0.0f, int variant=0) const
Definition: BOpcodeHandler.h:656
""
Definition: BOpcodeHandler.h:7459
char * m_name
Definition: BOpcodeHandler.h:7573
char m_green_mapping
Definition: BOpcodeHandler.h:7588
void SetParameterSource(int p) alter
Definition: BOpcodeHandler.h:7672
int GetLockValue() const
Definition: BOpcodeHandler.h:3079
unsigned char m_encoding
Definition: BOpcodeHandler.h:7165
Handles the TKE_Comment opcode.
Definition: BOpcodeHandler.h:974
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4353
Definition: BOpcodeHandler.h:5044
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4896
color index interpolation value; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2296
int GetColorTextLockValue() const
Definition: BOpcodeHandler.h:3239
int m_from_variant
internal use
Definition: BOpcodeHandler.h:1382
float const * GetDepthRange() const
Definition: BOpcodeHandler.h:4256
int m_mask
specifies which rendering options are active (and hence, which are valid). For internal use only...
Definition: BOpcodeHandler.h:5694
type for NURBS curve options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2638
int m_mask
internal use; specifies which selectability settings are active (and hence, which are valid)...
Definition: BOpcodeHandler.h:4681
type for 'mask transform' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2483
char const * GetTransform() const
Definition: BOpcodeHandler.h:7747
void SetColorVertexLockMask(int m) alter
Definition: BOpcodeHandler.h:3338
TK_Delete_Object()
Definition: BOpcodeHandler.h:1413
TK_Cutting_Plane()
Definition: BOpcodeHandler.h:6471
type for 'simple shadow' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2443
type for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2529
int m_hard_extent
internal use; hard extent
Definition: BOpcodeHandler.h:4430
select preferred drawing modes
Definition: BOpcodeHandler.h:5628
TKO_Generic_Size_Units
Definition: BOpcodeHandler.h:4966
void SetLodBounding(float x1, float y1, float z1, float x2, float y2, float z2) alter
Definition: BOpcodeHandler.h:3998
type for 'simple reflection' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2480
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2601
wchar_t * m_string
Definition: BOpcodeHandler.h:8318
lighting interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2306
int m_internal_polyline
internal use
Definition: BOpcodeHandler.h:4422
int GetColorFaceForcedLockMask() const
Definition: BOpcodeHandler.h:3539
int m_min_triangle_count
For internal use only.
Definition: BOpcodeHandler.h:2888
Handles the TKE_Reference opcodes.
Definition: BOpcodeHandler.h:1304
void SetGeometry(int m) alter
Definition: BOpcodeHandler.h:2080
The BStreamFileToolkit class provides support for importing/exporting HOOPS Stream File information...
Definition: BStreamFileToolkit.h:328
TK_Circle(unsigned char opcode)
Definition: BOpcodeHandler.h:6529
int m_flags
Definition: BOpcodeHandler.h:7581
char m_orientation_count
internal use
Definition: BOpcodeHandler.h:4582
void SetVertexDisplacement(int d) alter
Definition: BOpcodeHandler.h:3049
char alter * GetSpecularName() alter
Definition: BOpcodeHandler.h:1865
void SetString(int length) alter
Definition: BOpcodeHandler.h:7104
int GetType() const
Definition: BOpcodeHandler.h:7198
char m_layout
Definition: BOpcodeHandler.h:7592
void SetLookup(char const *string) alter
Definition: BOpcodeHandler.h:7222
void SetColorFaceForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3534
int GetColorLineLockMask() const
Definition: BOpcodeHandler.h:3182
void SetTarget(float x, float y, float z) alter
Definition: BOpcodeHandler.h:5501
refer to HC_Set_Geometry_Options
Definition: BOpcodeHandler.h:4565
void SetLookup(int length) alter
Definition: BOpcodeHandler.h:7224
int GetForceDefer() const
Definition: BOpcodeHandler.h:4556
""
Definition: BOpcodeHandler.h:7518
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2580
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 ...
Definition: BOpcodeHandler.h:638
void SetBlueMapping(int p) alter
Definition: BOpcodeHandler.h:7697
short m_forced_color_edge_value
For internal use only.
Definition: BOpcodeHandler.h:2809
int GetColorLineContrastForcedLockMask() const
Definition: BOpcodeHandler.h:3792
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2612
Handles the TKE_Selectability opcode.
Definition: BOpcodeHandler.h:4679
float * m_points
Definition: BOpcodeHandler.h:6053
int GetOptions() const
Definition: BOpcodeHandler.h:8021
type for HSR field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2401
int GetMoveDown() const
Definition: BOpcodeHandler.h:4746
void SetCulling(int c) alter
Definition: BOpcodeHandler.h:4493
full transforms
Definition: BOpcodeHandler.h:5649
void SetAction(int at) alter
Definition: BOpcodeHandler.h:5198
color by index
Definition: BOpcodeHandler.h:1740
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4897
void SetVisibilityForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3488
self-explanatory
Definition: BOpcodeHandler.h:2713
unsigned char m_format
Definition: BOpcodeHandler.h:7774
int m_count
Definition: BOpcodeHandler.h:7074
text centered across region
Definition: BOpcodeHandler.h:6998
int m_count
Definition: BOpcodeHandler.h:6186
void SetDepthRange(float n, float f) alter
Definition: BOpcodeHandler.h:4252
window space
Definition: BOpcodeHandler.h:6995
void SetStart(float s) alter
Definition: BOpcodeHandler.h:6145
void SetTarget(float const *t) alter
Definition: BOpcodeHandler.h:5504
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1686
self-explanatory
Definition: BOpcodeHandler.h:6378
int GetDegree() const
Definition: BOpcodeHandler.h:6233
Handles the TKE_Glyph_Definition opcode.
Definition: BOpcodeHandler.h:7826
int m_size
Definition: BOpcodeHandler.h:8192
void SetColorWindowLockValue(int v) alter
Definition: BOpcodeHandler.h:3257
int m_edge_join_cutoff_angle
For internal use only.
Definition: BOpcodeHandler.h:2970
int m_knot_count_implicit
Definition: BOpcodeHandler.h:6105
self-explanatory
Definition: BOpcodeHandler.h:6381
void SetSelectionLevel(int l) alter
Definition: BOpcodeHandler.h:4549
int m_progress
Tracks the amount of data that has been read/written so far.
Definition: BOpcodeHandler.h:63
8-bit colormap indices
Definition: BOpcodeHandler.h:7242
type for 'antialias' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2523
int GetCaps() const
Definition: BOpcodeHandler.h:6872
int m_allocated
Definition: BOpcodeHandler.h:7066
int GetRelatedSelectionLimit() const
Definition: BOpcodeHandler.h:4470
void SetPreferences(int r1, int r2) alter
Definition: BOpcodeHandler.h:5860
unsigned char m_bytes_format
Definition: BOpcodeHandler.h:7333
Handles the TKE_Dictionary_Locater opcode.
Definition: BOpcodeHandler.h:1601
char m_num_sphere
For internal use only.
Definition: BOpcodeHandler.h:2919
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2314
Handles the TKE_Tag opcode.
Definition: BOpcodeHandler.h:1537
Definition: BStreamFileToolkit.h:37
float m_dihedral
For internal use only.
Definition: BOpcodeHandler.h:2961
int GetVisibilityLockValue() const
Definition: BOpcodeHandler.h:3101
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4898
float * m_u_knots
Definition: BOpcodeHandler.h:6264
""
Definition: BOpcodeHandler.h:4867
short m_forced_color_face_mask
For internal use only.
Definition: BOpcodeHandler.h:2806
int GetUnits() const
Definition: BOpcodeHandler.h:5010
void SetColorLineLockValue(int v) alter
Definition: BOpcodeHandler.h:3188
unsigned char * m_bytes
Definition: BOpcodeHandler.h:7772
type for 'cut geometry' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2426
int m_count
Definition: BOpcodeHandler.h:6810
unsigned int m_options
Definition: BOpcodeHandler.h:7331
type for 'mask transform' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2484
unsigned char m_hlr_hsr_algorithm
for internal use only.
Definition: BOpcodeHandler.h:2857
float const * GetWeights() const
Definition: BOpcodeHandler.h:6140
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4393
float m_depth_peeling_min_area
For internal use only.
Definition: BOpcodeHandler.h:2966
int GetColorFaceForcedLockValue() const
Definition: BOpcodeHandler.h:3550
char const * GetName() const
Definition: BOpcodeHandler.h:7217
""
Definition: BOpcodeHandler.h:4870
char * m_image
Definition: BOpcodeHandler.h:7575
void SetRotation(float r) alter
Definition: BOpcodeHandler.h:5783
unsigned char m_transforms
for internal use only
Definition: BOpcodeHandler.h:5715
Handles the TKE_Line_Style opcode.
Definition: BOpcodeHandler.h:7940
unsigned char alter * GetBytes() alter
Definition: BOpcodeHandler.h:7802
choose or simulate a bold variation
Definition: BOpcodeHandler.h:5624
char m_options
Definition: BOpcodeHandler.h:7992
int GetApplicationMode() const
Definition: BOpcodeHandler.h:7729
TKO_Light_Options
Definition: BOpcodeHandler.h:5944
int m_curve_budget
For internal use only.
Definition: BOpcodeHandler.h:2901
""
Definition: BOpcodeHandler.h:4860
int GetColorWindowLockMask() const
Definition: BOpcodeHandler.h:3251
TKO_Texture_Param_Sources
Definition: BOpcodeHandler.h:7471
void SetMirrorName(int length) alter
Definition: BOpcodeHandler.h:1874
bool m_is_valid
internal use
Definition: BOpcodeHandler.h:5913
int GetIndex() alter
Definition: BOpcodeHandler.h:1425
void SetWindow(float l, float r, float b, float t) alter
Definition: BOpcodeHandler.h:5588
int m_name_length
Definition: BOpcodeHandler.h:7877
float m_value
for internal use only.
Definition: BOpcodeHandler.h:4987
refer to HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:4833
char * m_name
internal use: name
Definition: BOpcodeHandler.h:5047
////
Definition: BOpcodeHandler.h:821
void SetGreekingLimit(float s) alter
Definition: BOpcodeHandler.h:5818
TK_Tag(unsigned char opcode=TKE_Tag)
Definition: BOpcodeHandler.h:1542
int GetOptions() const
Definition: BOpcodeHandler.h:6316
short m_forced_color_face_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:2819
void SetColorEdgeContrastLockMask(int m) alter
Definition: BOpcodeHandler.h:3361
short m_lock_color_face_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:2777
int m_count
for internal use only
Definition: BOpcodeHandler.h:5301
char * m_transform
Definition: BOpcodeHandler.h:7596
char * m_name
Definition: BOpcodeHandler.h:5465
char const * GetEmissionName() const
Definition: BOpcodeHandler.h:1908
char const * GetSegment() const
Definition: BOpcodeHandler.h:7926
texture interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2285
for further expansion
Definition: BOpcodeHandler.h:5621
void SetColorTextContrastLockMask(int m) alter
Definition: BOpcodeHandler.h:3453
clip region is to be specified in window space {[0..1],[0..1]}. Default is world space ...
Definition: BOpcodeHandler.h:8031
short m_lock_color_window_value
For internal use only.
Definition: BOpcodeHandler.h:2775
int GetVisibilityForcedLockValue() const
Definition: BOpcodeHandler.h:3504
void SetSimpleShadowBlur(int m) alter
Definition: BOpcodeHandler.h:4161
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2321
unsigned char m_renumbered_scope
for internal use only
Definition: BOpcodeHandler.h:1226
int m_int
temporary
Definition: BOpcodeHandler.h:80
void SetPreferenceCutoffUnits(int u) alter
Definition: BOpcodeHandler.h:5870
""
Definition: BOpcodeHandler.h:7483
clip region is to be specified in world space.
Definition: BOpcodeHandler.h:8030
TK_Status Tag(BStreamFileToolkit &tk, int variant=-1) const
Definition: BOpcodeHandler.h:174
int GetSize() const
Definition: BOpcodeHandler.h:8224
float * m_isoline_positions
for internal use only.
Definition: BOpcodeHandler.h:2866
int m_to_index
internal use
Definition: BOpcodeHandler.h:1383
TKO_Texture_Tilings
Definition: BOpcodeHandler.h:7516
TKO_Circular_Options
Definition: BOpcodeHandler.h:6507
TK_Status PutOpcode(BStreamFileToolkit &tk, int adjust=1) alter
Definition: BOpcodeHandler.h:455
TKO_Text_Region_Options
Definition: BOpcodeHandler.h:6994
void SetColorMarkerContrastForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3810
short m_forced_color_face_value
For internal use only.
Definition: BOpcodeHandler.h:2807
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4347
refer to HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:4822
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2560
void SetTransmission(float r, float g, float b) alter
Definition: BOpcodeHandler.h:1883
void SetInternalPolylineSelectionLimit(int i) alter
Definition: BOpcodeHandler.h:4483
self-explanatory
Definition: BOpcodeHandler.h:6508
secondary extended bits
Definition: BOpcodeHandler.h:1677
char alter * GetCondition() alter
Definition: BOpcodeHandler.h:5193
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4361
mask corresponding to extended bit
Definition: BOpcodeHandler.h:1747
int GetEncoding() const
Definition: BOpcodeHandler.h:7233
int GetAntiAlias() const
Definition: BOpcodeHandler.h:4304
char const * GetReference() const
Definition: BOpcodeHandler.h:7397
int GetSimpleShadowResolution() const
Definition: BOpcodeHandler.h:4168
char m_red_mapping
Definition: BOpcodeHandler.h:7587
int m_segment_length
Definition: BOpcodeHandler.h:7880
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1708
float alter * GetPoints() alter
Definition: BOpcodeHandler.h:6080
int GetLodNumRatios() const
Definition: BOpcodeHandler.h:4023
void SetRGB(float const *rgb) alter
Definition: BOpcodeHandler.h:1987
Handles the TKE_Texture opcode.
Definition: BOpcodeHandler.h:7571
type for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2536
void SetSize(int const *s) alter
Definition: BOpcodeHandler.h:7807
int m_allocated
Definition: BOpcodeHandler.h:1101
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4372
unsigned char m_options
Definition: BOpcodeHandler.h:6190
Handles the TKE_Inlude_Segment TKE_Named_Style and TKE_Style_Segment opcodes.
Definition: BOpcodeHandler.h:1215
TK_Clip_Region()
Definition: BOpcodeHandler.h:8051
self-explanatory
Definition: BOpcodeHandler.h:7245
int GetColorFaceLockMask() const
Definition: BOpcodeHandler.h:3136
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1659
""
Definition: BOpcodeHandler.h:7480
int m_length
Definition: BOpcodeHandler.h:5464
int GetVisibilityForcedLockMask() const
Definition: BOpcodeHandler.h:3493
short m_lock_color_text_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:2792
float const * GetTarget() const
Definition: BOpcodeHandler.h:5506
char alter * GetBytes() alter
Definition: BOpcodeHandler.h:7381
void SetLodFallback(int v) alter
Definition: BOpcodeHandler.h:3993
void SetColorBackForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3729
refer to HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:4837
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4899
TK_Close_Segment()
Definition: BOpcodeHandler.h:1159
int GetColorTextForcedLockMask() const
Definition: BOpcodeHandler.h:3631
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4340
int GetColorWindowContrastForcedLockValue() const
Definition: BOpcodeHandler.h:3711
void SetEnd(float e) alter
Definition: BOpcodeHandler.h:6147
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2380
void SetEmission(float r, float g, float b) alter
Definition: BOpcodeHandler.h:1898
TK_Unicode_Options()
Definition: BOpcodeHandler.h:5268
void SetRendererCutoff(float s) alter
Definition: BOpcodeHandler.h:5844
refer to HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:4817
the name of the font (i.e. which font to use)
Definition: BOpcodeHandler.h:5602
void SetGeometry(int m) alter
Definition: BOpcodeHandler.h:2129
void SetNURBSOptionsMask(int m) alter
Definition: BOpcodeHandler.h:3931
float const * GetValue() const
Definition: BOpcodeHandler.h:2049
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1675
char const * GetLoggingString() const
Definition: BOpcodeHandler.h:226
char alter * GetSegment() alter
Definition: BOpcodeHandler.h:1264
void SetAlphaMapping(int p) alter
Definition: BOpcodeHandler.h:7702
HT_NURBS_Trim * GetNext(void)
Definition: BOpcodeHandler.h:6223
for further expansion
Definition: BOpcodeHandler.h:5620
int m_index
internal use: simple value for recognised old forms
Definition: BOpcodeHandler.h:5048
type for 'buffer options' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2511
""
Definition: BOpcodeHandler.h:4865
float const * GetOblique() const
Definition: BOpcodeHandler.h:5538
int m_mask
internal use
Definition: BOpcodeHandler.h:1949
the size tolerance outside of which fonts must be regenerated
Definition: BOpcodeHandler.h:5604
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2620
////
Definition: BOpcodeHandler.h:831
int GetColorVertexForcedLockMask() const
Definition: BOpcodeHandler.h:3746
float m_gloss
internal use
Definition: BOpcodeHandler.h:1783
replace with a grid of lines
Definition: BOpcodeHandler.h:5680
""
Definition: BOpcodeHandler.h:4872
Handles the TKE_LOD opcode.
Definition: BOpcodeHandler.h:1436
void SetLodCutoff(float r) alter
Definition: BOpcodeHandler.h:4052
don't draw
Definition: BOpcodeHandler.h:5679
type for 'mask transform' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2486
char const * GetBumpName() const
Definition: BOpcodeHandler.h:1926
self-explanatory
Definition: BOpcodeHandler.h:2674
void SetCenter(float const *s) alter
Definition: BOpcodeHandler.h:6689
int GetGeneralDisplacement() const
Definition: BOpcodeHandler.h:3056
shift of extended section
Definition: BOpcodeHandler.h:2478
int GetGreekingMode() const
Definition: BOpcodeHandler.h:5830
self-explanatory
Definition: BOpcodeHandler.h:2678
character rotation, specified in degrees
Definition: BOpcodeHandler.h:5606
limit at which text may be replaced with a crude representation
Definition: BOpcodeHandler.h:5622
int m_max_degree
For internal use only.
Definition: BOpcodeHandler.h:2891
float GetNearLimit() const
Definition: BOpcodeHandler.h:5553
mask for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2534
float m_simple_reflection_yon
For internal use only.
Definition: BOpcodeHandler.h:2950
float const * GetStart() const
Definition: BOpcodeHandler.h:6581
int GetValue() const
Definition: BOpcodeHandler.h:5751
Does not handle any top level opcodes, but rather only the trim types allowable on nurbs surfaces...
Definition: BOpcodeHandler.h:6179
int GetColorLineContrastForcedLockValue() const
Definition: BOpcodeHandler.h:3803
TK_Status GetData(BStreamFileToolkit &tk, unsigned int *i, int n) alter
Definition: BOpcodeHandler.h:276
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2595
void SetSimpleShadowPlane(float a, float b, float c, float d) alter
Definition: BOpcodeHandler.h:4182
void SetMajor(float const *m) alter
Definition: BOpcodeHandler.h:6632
TK_Conditions()
Definition: BOpcodeHandler.h:5123
unsigned char m_tessellations
For internal use only.
Definition: BOpcodeHandler.h:2916
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2594
text size is adjusted to fit
Definition: BOpcodeHandler.h:7012
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2365
color interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2290
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2592
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2354
self-explanatory
Definition: BOpcodeHandler.h:2698
channel m_mirror
internal use
Definition: BOpcodeHandler.h:1778
int GetOptions() const
Definition: BOpcodeHandler.h:6235
char const * GetMirrorName() const
Definition: BOpcodeHandler.h:1878
int GetLodNumLevels() const
Definition: BOpcodeHandler.h:3979
float m_curve_max_angle
For internal use only.
Definition: BOpcodeHandler.h:2909
self-explanatory
Definition: BOpcodeHandler.h:2672
float GetWidthScale() const
Definition: BOpcodeHandler.h:5795
short m_lock_color_cut_face_mask
For internal use only.
Definition: BOpcodeHandler.h:2796
type for transparency field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2420
horizontal fitting is specified
Definition: BOpcodeHandler.h:7000
void SetBufferOptionsValue(int v) alter
Definition: BOpcodeHandler.h:3882
float * m_knots
Definition: BOpcodeHandler.h:6192
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2350
void SetTessellationMask(int m) alter
Definition: BOpcodeHandler.h:4071
unsigned short m_mask_transform
For internal use only.
Definition: BOpcodeHandler.h:2958
void SetEnd(float const *e) alter
Definition: BOpcodeHandler.h:6562
TK_Color_By_Value()
Definition: BOpcodeHandler.h:2007
float const * GetSimpleShadowColor() const
Definition: BOpcodeHandler.h:4199
ID_Key m_this_key
for internal use only
Definition: BOpcodeHandler.h:1311
Handles the TKE_Callback opcode.
Definition: BOpcodeHandler.h:2240
""
Definition: BOpcodeHandler.h:4877
int GetPreferenceCutoffUnits() const
Definition: BOpcodeHandler.h:5872
void SetForceDefer(int l) alter
Definition: BOpcodeHandler.h:4554
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4373
refer to HC_Set_Marker_Symbol
Definition: BOpcodeHandler.h:4841
TK_File_Info()
Definition: BOpcodeHandler.h:943
unsigned char m_space_units
for internal use only
Definition: BOpcodeHandler.h:5712
type for transparency field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2418
float GetRotation() const
Definition: BOpcodeHandler.h:5785
char * m_name
Definition: BOpcodeHandler.h:7830
type for 'shadow map' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2458
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1683
HT_NURBS_Trim * m_trims
Definition: BOpcodeHandler.h:6267
char alter * GetCondition() alter
Definition: BOpcodeHandler.h:1285
unsigned char m_region_options
Definition: BOpcodeHandler.h:7070
self-explanatory
Definition: BOpcodeHandler.h:6976
Handles the TKE_Open_Segment opcode.
Definition: BOpcodeHandler.h:1098
TK_Status GetData(BStreamFileToolkit &tk, unsigned int &i) alter
Definition: BOpcodeHandler.h:294
void SetColorLockValue(int v) alter
Definition: BOpcodeHandler.h:3119
int GetColorEdgeLockValue() const
Definition: BOpcodeHandler.h:3170
float m_stereo_separation
For internal use only.
Definition: BOpcodeHandler.h:2913
int m_name_length
internal use: length of name
Definition: BOpcodeHandler.h:5046
refer to HC_Set_Heuristics for description
Definition: BOpcodeHandler.h:4399
int GetType() const
Definition: BOpcodeHandler.h:6961
void SetHlrOptions(int o) alter
Definition: BOpcodeHandler.h:3902
int m_debug
For internal use only.
Definition: BOpcodeHandler.h:2754
""
Definition: BOpcodeHandler.h:4878
float m_extra_space
for internal use only
Definition: BOpcodeHandler.h:5703
""
Definition: BOpcodeHandler.h:7446
type for HSR field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2407
""
Definition: BOpcodeHandler.h:4844
float GetExtraSpace() const
Definition: BOpcodeHandler.h:5800
//// pseudo-handler (non-zero value)
Definition: BOpcodeHandler.h:852
void SetColorMarkerContrastLockMask(int m) alter
Definition: BOpcodeHandler.h:3407
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2572
extended bits for common/shared items
Definition: BOpcodeHandler.h:1648
self-explanatory
Definition: BOpcodeHandler.h:6380
TK_Status GetData(BStreamFileToolkit &tk, unsigned char &b) alter
Definition: BOpcodeHandler.h:288
float GetOrderedWeight(int index) const
Definition: BOpcodeHandler.h:4542
TK_Character_Attribute * m_character_attributes
Definition: BOpcodeHandler.h:7075
type for 'shadow map' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2462
refer to HC_Set_Geometry_Options
Definition: BOpcodeHandler.h:4566
TK_Reopen_Segment()
Definition: BOpcodeHandler.h:1190
void SetColorBackForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3718
""
Definition: BOpcodeHandler.h:4866
the character size
Definition: BOpcodeHandler.h:7021
self-explanatory
Definition: BOpcodeHandler.h:2685
void SetInner(float i) alter
Definition: BOpcodeHandler.h:6442
""
Definition: BOpcodeHandler.h:4856
int m_simple_reflection_visibility_mask
For internal use only.
Definition: BOpcodeHandler.h:2951
void SetCenter(float x, float y, float z) alter
Definition: BOpcodeHandler.h:6619
void SetMaximumExtentMode(int c) alter
Definition: BOpcodeHandler.h:4507
TK_Cylinder()
Definition: BOpcodeHandler.h:6749
int GetColorMarkerContrastLockValue() const
Definition: BOpcodeHandler.h:3423
float const * GetMirror() const
Definition: BOpcodeHandler.h:1876
Handles the TKE_Geometry_Attributes opcode.
Definition: BOpcodeHandler.h:1482
type for transparency field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2416
void SetList(HT_NURBS_Trim *node) alter
Definition: BOpcodeHandler.h:6210
int m_length
Definition: BOpcodeHandler.h:8316
unsigned char m_optionals
Definition: BOpcodeHandler.h:6102
int m_gooch_color_map_segment_length
Definition: BOpcodeHandler.h:2925
""
Definition: BOpcodeHandler.h:4869
Handles the TKE_Sphere opcode.
Definition: BOpcodeHandler.h:6662
extra spacing between lines
Definition: BOpcodeHandler.h:5613
void SetRenderer(int r) alter
Definition: BOpcodeHandler.h:5834
channel m_emission
internal use
Definition: BOpcodeHandler.h:1780
refer to HC_Set_Visibility
Definition: BOpcodeHandler.h:4930
""
Definition: BOpcodeHandler.h:4852
""
Definition: BOpcodeHandler.h:7560
float m_curve_max_deviation
For internal use only.
Definition: BOpcodeHandler.h:2910
int m_name_length
Definition: BOpcodeHandler.h:7577
type for 'cut geometry' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2429
float const * GetSpecular() const
Definition: BOpcodeHandler.h:1861
TK_User_Index()
Definition: BOpcodeHandler.h:5310
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4375
unsigned char m_renderer_cutoff_units
for internal use only
Definition: BOpcodeHandler.h:5716
float const * GetMajor() const
Definition: BOpcodeHandler.h:6634
int GetLength() alter
Definition: BOpcodeHandler.h:5195
char alter * GetTransmissionName() alter
Definition: BOpcodeHandler.h:1895
void SetPosition(float x, float y, float z) alter
Definition: BOpcodeHandler.h:7111
TKO_Texture_Layouts
Definition: BOpcodeHandler.h:7505
short m_options
Definition: BOpcodeHandler.h:5168
////
Definition: BOpcodeHandler.h:828
void SetPosition(float const *p) alter
Definition: BOpcodeHandler.h:6424
int alter * GetSizes() alter
Definition: BOpcodeHandler.h:5398
Handles the TKE_User_Index opcode.
Definition: BOpcodeHandler.h:5299
""
Definition: BOpcodeHandler.h:7550
int GetOptions() const
Definition: BOpcodeHandler.h:6151
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2565
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special) alter
Definition: BOpcodeHandler.h:1081
void SetInterpolation(int p) alter
Definition: BOpcodeHandler.h:7677
unsigned char m_num_levels
For internal use only.
Definition: BOpcodeHandler.h:2890
TK_Renumber(unsigned char opcode, ID_Key key=0)
Definition: BOpcodeHandler.h:1516
void SetLodClamp(int v) alter
Definition: BOpcodeHandler.h:3981
void SetColorTextForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3626
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1653
void SetLodRatios(int c, float const *r=0) alter
Definition: BOpcodeHandler.h:4014
int m_mask
internal use
Definition: BOpcodeHandler.h:2111
TK_Status GetData(BStreamFileToolkit &tk, int *i, int n) alter
Definition: BOpcodeHandler.h:254
TKO_Geometry_Options
Definition: BOpcodeHandler.h:4564
refer to HC_Set_Heuristics for description
Definition: BOpcodeHandler.h:4402
void SetVertexDecimation(float f) alter
Definition: BOpcodeHandler.h:4307
char alter * GetReference() alter
Definition: BOpcodeHandler.h:7399
short m_forced_color_back_mask
For internal use only.
Definition: BOpcodeHandler.h:2822
float m_tolerance
For internal use only.
Definition: BOpcodeHandler.h:2892
Definition: BStream.h:264
short m_lock_color_marker_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:2789
void SetLodBounding(float const *p) alter
Definition: BOpcodeHandler.h:4007
TKO_Actions
Definition: BOpcodeHandler.h:5151
void SetScreenRange(float l, float r, float b, float t) alter
Definition: BOpcodeHandler.h:4260
char alter * GetDefinition() alter
Definition: BOpcodeHandler.h:7979
int m_data_size
Definition: BOpcodeHandler.h:7327
int GetCutGeometry() const
Definition: BOpcodeHandler.h:4128
TK_Status PutData(BStreamFileToolkit &tk, float const &f) alter
Definition: BOpcodeHandler.h:452
unsigned char vertical_offset_units
specified with enum TKO_Font_Size_Units
Definition: BOpcodeHandler.h:7050
self-explanatory
Definition: BOpcodeHandler.h:6988
type for contour options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2553
void SetTechnology(int t) alter
Definition: BOpcodeHandler.h:3029
void SetPattern(int p) alter
Definition: BOpcodeHandler.h:5034
int m_lock_visibility_mask
For internal use only.
Definition: BOpcodeHandler.h:2800
int GetOptions() const
Definition: BOpcodeHandler.h:5204
void SetShadowMapResolution(int m) alter
Definition: BOpcodeHandler.h:4213
""
Definition: BOpcodeHandler.h:4859
type for 'cut geometry' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2435
self-explanatory
Definition: BOpcodeHandler.h:7244
unsigned char m_options
Definition: BOpcodeHandler.h:7069
Definition: BOpcodeHandler.h:865
char * m_condition
Definition: BOpcodeHandler.h:1222
refer to HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:4809
Handles the TKE_Image opcode.
Definition: BOpcodeHandler.h:7320
void SetColorLockMask(int m) alter
Definition: BOpcodeHandler.h:3108
self-explanatory; (internal note: keep this listed last)
Definition: BOpcodeHandler.h:4975
type for 'quantization' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2506
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special) alter
Definition: BOpcodeHandler.h:7790
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4908
int GetSimpleShadowBlur() const
Definition: BOpcodeHandler.h:4163
Handles the TKE_Font opcode.
Definition: BOpcodeHandler.h:7156
ID_Key GetIndex() alter
Definition: BOpcodeHandler.h:1332
char alter * GetName() alter
Definition: BOpcodeHandler.h:7856
Handles the TKE_Unicode_Options opcode.
Definition: BOpcodeHandler.h:5261
int GetShadowMap() const
Definition: BOpcodeHandler.h:4210
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2632
float m_inner
for internal use only
Definition: BOpcodeHandler.h:6404
void SetNeedsTag(bool n) alter
Definition: BOpcodeHandler.h:186
void SetColorEdgeContrastLockValue(int v) alter
Definition: BOpcodeHandler.h:3372
short m_forced_color_cut_face_mask
For internal use only.
Definition: BOpcodeHandler.h:2838
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4339
color by index
Definition: BOpcodeHandler.h:2716
float * m_weights
Definition: BOpcodeHandler.h:6107
float alter * GetLodCutoffs() alter
Definition: BOpcodeHandler.h:4067
""
Definition: BOpcodeHandler.h:7441
texture interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2288
void fix(int *i, int n)
for internal use only
Definition: BOpcodeHandler.h:554
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2589
refer to HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:4834
type for 'antialias' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2516
void SetColorVertexContrastForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3844
int const * GetIndices() const
Definition: BOpcodeHandler.h:5331
type for transparency field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2413
int GetInternalShellSelectionLimit() const
Definition: BOpcodeHandler.h:4480
int GetAlphaMapping() const
Definition: BOpcodeHandler.h:7704
room for expansion
Definition: BOpcodeHandler.h:7031
void SetPoint(float const *p) alter
Definition: BOpcodeHandler.h:5989
Handles the TKE_File_Info opcode.
Definition: BOpcodeHandler.h:936
short m_lock_color_text_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:2793
char alter * GetString() alter
Definition: BOpcodeHandler.h:8264
void SetOptions(int o) alter
Definition: BOpcodeHandler.h:8077
BBaseOpcodeHandler * m_current_object
internal use
Definition: BOpcodeHandler.h:910
not sapecified
Definition: BOpcodeHandler.h:5657
float m_end
Definition: BOpcodeHandler.h:6110
Handles the TKE_Color opcode.
Definition: BOpcodeHandler.h:1758
""
Definition: BOpcodeHandler.h:4889
TKO_Font_Transforms
Definition: BOpcodeHandler.h:5647
Handles the TKE_Heuristics opcode.
Definition: BOpcodeHandler.h:4415
int m_value
specifies what values to set for boolean options. For internal use only.
Definition: BOpcodeHandler.h:5695
short m_lock_color_line_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:2786
void SetColorTextLockMask(int m) alter
Definition: BOpcodeHandler.h:3223
void SetWidthScale(float s) alter
Definition: BOpcodeHandler.h:5793
unsigned char m_simple_shadow_blur
For internal use only.
Definition: BOpcodeHandler.h:2934
char m_decimation
Definition: BOpcodeHandler.h:7586
type for 'simple shadow' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2446
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2577
int GetSimpleReflectionVisibilityValue() const
Definition: BOpcodeHandler.h:4248
void SetTransform(int length) alter
Definition: BOpcodeHandler.h:7745
lighting interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2376
char m_threshold_type
For internal use only.
Definition: BOpcodeHandler.h:2887
Handles the TKE_Circle, TKE_Circular_Arc, TKE_Circular_Chord and TKE_Circular_Wedge opcodes...
Definition: BOpcodeHandler.h:6519
character is skipped
Definition: BOpcodeHandler.h:7023
self-explanatory
Definition: BOpcodeHandler.h:2690
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4323
int GetForcedLockMask() const
Definition: BOpcodeHandler.h:3477
int GetColorWindowContrastLockMask() const
Definition: BOpcodeHandler.h:3297
void SetCylinderTessellation(int n) alter
Definition: BOpcodeHandler.h:4075
int GetBlueMapping() const
Definition: BOpcodeHandler.h:7699
void SetOptions(int at) alter
Definition: BOpcodeHandler.h:5202
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4343
int const * GetSize() const
Definition: BOpcodeHandler.h:7414
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4338
void SetMask(int m) alter
Definition: BOpcodeHandler.h:4599
int GetColorEdgeForcedLockMask() const
Definition: BOpcodeHandler.h:3562
extra item for selectability; refer to HC_Set_Selectability for a description
Definition: BOpcodeHandler.h:1694
short m_lock_color_vertex_value
For internal use only.
Definition: BOpcodeHandler.h:2783
float alter * GetWeights() alter
Definition: BOpcodeHandler.h:6239
type for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2546
int GetCount() const
Definition: BOpcodeHandler.h:8074
float GetSlant() const
Definition: BOpcodeHandler.h:5790
TKO_Rendering_Option_Bits
Definition: BOpcodeHandler.h:2284
refer to HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:4821
int GetColorBackForcedLockMask() const
Definition: BOpcodeHandler.h:3723
void SetRectangle(float const *rect) alter
Definition: BOpcodeHandler.h:8013
type for 'cut geometry' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2439
TK_Bounding(unsigned char opcode)
Definition: BOpcodeHandler.h:5916
limit font source
Definition: BOpcodeHandler.h:5626
type for 'technology' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2503
Instance_Options
Definition: BOpcodeHandler.h:1365
void SetLayout(int p) alter
Definition: BOpcodeHandler.h:7712
int GetWhenInvisible() const
Definition: BOpcodeHandler.h:4768
refer to HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:4813
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2574
""
Definition: BOpcodeHandler.h:4881
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4327
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2335
""
Definition: BOpcodeHandler.h:7447
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1698
TK_Compression(char opcode)
Definition: BOpcodeHandler.h:1071
void SetAmbientUpVector(float const *v) alter
Definition: BOpcodeHandler.h:4273
Definition: BOpcodeHandler.h:5017
""
Definition: BOpcodeHandler.h:4843
float m_rotation
for internal use only
Definition: BOpcodeHandler.h:5700
void SetDiffuseTextureTintColor(float r, float g, float b) alter
Definition: BOpcodeHandler.h:4294
float alter * GetWeights() alter
Definition: BOpcodeHandler.h:6141
void SetSpecularName(int length) alter
Definition: BOpcodeHandler.h:1859
extended bit
Definition: BOpcodeHandler.h:1741
unsigned char m_greeking_units
for internal use only
Definition: BOpcodeHandler.h:5713
TK_Size(unsigned char opcode)
Definition: BOpcodeHandler.h:4992
void SetFollow(bool f) alter
Definition: BOpcodeHandler.h:1289
refer to HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:4811
int GetWriteFlags(int mask=~0) const
Definition: BStreamFileToolkit.h:877
short m_lock_color_edge_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:2785
type for 'antialias' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2518
TK_XML()
Definition: BOpcodeHandler.h:8197
char alter * GetTransform() alter
Definition: BOpcodeHandler.h:7749
extended bit for HLR suboptions; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2542
int GetLength() alter
Definition: BOpcodeHandler.h:5144
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4350
char m_lod_algorithm
For internal use only.
Definition: BOpcodeHandler.h:2882
short m_lock_color_simple_reflection_mask
For internal use only.
Definition: BOpcodeHandler.h:2794
void SetHardExtent(int c) alter
Definition: BOpcodeHandler.h:4513
void SetDebug(int d) alter
Definition: BOpcodeHandler.h:3039
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1711
refer to HC_Define_Texture
Definition: BOpcodeHandler.h:7559
Handles the TKE_URL opcodes.
Definition: BOpcodeHandler.h:8236
Handles the TKE_Area_Light opcode.
Definition: BOpcodeHandler.h:6330
int GetMask() const
Definition: BOpcodeHandler.h:5746
float const * GetImageScale() const
Definition: BOpcodeHandler.h:4282
short m_forced_color_line_mask
For internal use only.
Definition: BOpcodeHandler.h:2810
short m_forced_color_edge_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:2827
void fix_in(float *f, int n)
for internal use only
Definition: BOpcodeHandler.h:579
int GetVertexDisplacement() const
Definition: BOpcodeHandler.h:3051
Handles the TKE_Cutting_Plane opcode.
Definition: BOpcodeHandler.h:6464
float const * GetPosition() const
Definition: BOpcodeHandler.h:5496
self-explanatory
Definition: BOpcodeHandler.h:2701
TK_Status GetData(BStreamFileToolkit &tk, short *s, int n) alter
Definition: BOpcodeHandler.h:246
int GetColorLineLockValue() const
Definition: BOpcodeHandler.h:3193
int GetRedMapping() const
Definition: BOpcodeHandler.h:7689
int GetDisplayListLevel() const
Definition: BOpcodeHandler.h:4149
refer to HC_Set_Heuristics for description
Definition: BOpcodeHandler.h:4398
int GetColorVertexContrastLockMask() const
Definition: BOpcodeHandler.h:3435
short m_forced_color_text_mask
For internal use only.
Definition: BOpcodeHandler.h:2814
type for NURBS curve options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2636
type for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2532
void SetColorEdgeLockMask(int m) alter
Definition: BOpcodeHandler.h:3154
""
Definition: BOpcodeHandler.h:7474
TK_Callback()
Definition: BOpcodeHandler.h:2252
int const * GetPreferences() const
Definition: BOpcodeHandler.h:5862
void SetColorVertexLockValue(int v) alter
Definition: BOpcodeHandler.h:3349
float const * GetKnots() const
Definition: BOpcodeHandler.h:6142
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4342
void SetLodNumLevels(int v) alter
Definition: BOpcodeHandler.h:3977
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2390
try to use bitmaps
Definition: BOpcodeHandler.h:5670
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1701
int GetParameterOffset() const
Definition: BOpcodeHandler.h:7734
extended bit for HLR suboptions; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2540
Handles the TKE_Named_Style_Def opcode.
Definition: BOpcodeHandler.h:7875
void SetImageScale(float const *s) alter
Definition: BOpcodeHandler.h:4280
void SetMaskTransform(int m) alter
Definition: BOpcodeHandler.h:4120
void SetOptions(int o) alter
Definition: BOpcodeHandler.h:6367
void **const GetValues() const
Definition: BOpcodeHandler.h:5389
int GetLodOptionsValue() const
Definition: BOpcodeHandler.h:3967
int GetColorVertexContrastForcedLockValue() const
Definition: BOpcodeHandler.h:3849
float m_surface_max_facet_deviation
For internal use only.
Definition: BOpcodeHandler.h:2907
hard edge angle limit; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2664
""
Definition: BOpcodeHandler.h:7532
float const * GetRef1() const
Definition: BOpcodeHandler.h:6940
float GetRendererCutoff() const
Definition: BOpcodeHandler.h:5846
float GetLodTolerance() const
Definition: BOpcodeHandler.h:3991
perspective projection
Definition: BOpcodeHandler.h:5439
float m_greeking_limit
for internal use only
Definition: BOpcodeHandler.h:5705
int GetColorBackLockMask() const
Definition: BOpcodeHandler.h:3320
int GetColorFaceContrastLockMask() const
Definition: BOpcodeHandler.h:3274
void SetNURBSCurveBudget(int b) alter
Definition: BOpcodeHandler.h:3943
float GetVectorTolerance() const
Definition: BOpcodeHandler.h:4527
float const * GetEndNormal(int index) const
Definition: BOpcodeHandler.h:6887
int GetIndex() const
Definition: BOpcodeHandler.h:1202
void SetValue(float const *triple) alter
Definition: BOpcodeHandler.h:2047
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4329
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2582
short m_forced_color_marker_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:2831
char alter * GetEnvironmentName() alter
Definition: BOpcodeHandler.h:1919
extended bits for color
Definition: BOpcodeHandler.h:1663
Handles the TKE_Renumber_Key_Global, TKE_Renumber_Key_Local, and TKE_Priority opcodes.
Definition: BOpcodeHandler.h:1508
void GetTarget(float *t) const
Definition: BOpcodeHandler.h:5508
float slant
the angle (in degrees) that text is slanted (e.g. for italic). Positive numbers correspond to clockwi...
Definition: BOpcodeHandler.h:7042
int m_lock_color_mask
For internal use only.
Definition: BOpcodeHandler.h:2762
float alter * GetUKnots() alter
Definition: BOpcodeHandler.h:6307
try to use polygonal (outline) representations
Definition: BOpcodeHandler.h:5671
HSR algorithm; refer to HC_Set_Rendering_Options for description.
Definition: BOpcodeHandler.h:2309
void SetInternalSelectionLimit(int i) alter
Definition: BOpcodeHandler.h:4473
void SetOuter(float o) alter
Definition: BOpcodeHandler.h:6437
void SetIndices(int count) alter
Definition: BOpcodeHandler.h:5327
char * m_string
Definition: BOpcodeHandler.h:8279
unsigned char m_present
internal use
Definition: BOpcodeHandler.h:1570
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4379
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2326
void SetColorMarkerLockValue(int v) alter
Definition: BOpcodeHandler.h:3211
lighting interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2303
char const * GetDefinition() const
Definition: BOpcodeHandler.h:7977
hard edge angle limit; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2661
int GetInterpolation() const
Definition: BOpcodeHandler.h:7679
void SetImageScale(float x, float y) alter
Definition: BOpcodeHandler.h:4278
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2396
adjustment to character width
Definition: BOpcodeHandler.h:7026
unsigned char m_preference_cutoff_units
for internal use only
Definition: BOpcodeHandler.h:5717
char const * GetCallback() const
Definition: BOpcodeHandler.h:2269
TK_User_Options()
Definition: BOpcodeHandler.h:5228
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2336
unsigned char m_region_fit
Definition: BOpcodeHandler.h:7071
shift of extended section
Definition: BOpcodeHandler.h:2496
float m_line_spacing
for internal use only
Definition: BOpcodeHandler.h:5704
refer to HC_Define_Texture
Definition: BOpcodeHandler.h:7495
TK_Color_By_FIndex()
Definition: BOpcodeHandler.h:2116
void SetFormat(int f) alter
Definition: BOpcodeHandler.h:7417
type for NURBS curve options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2642
//// first opcode value reserved for private use
Definition: BOpcodeHandler.h:848
float rotation
the angle (in degrees) that text is rotated
Definition: BOpcodeHandler.h:7043
int GetCount() const
Definition: BOpcodeHandler.h:5380
int m_down
internal use; specifies what geometry is selectable on mouse button down. For internal use only...
Definition: BOpcodeHandler.h:4682
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4369
void SetRGB(float r, float g, float b) alter
Definition: BOpcodeHandler.h:1985
""
Definition: BOpcodeHandler.h:7452
refer to HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:4830
float const * GetVector() const
Definition: BOpcodeHandler.h:4517
void SetDiffuse(float const *rgb) alter
Definition: BOpcodeHandler.h:1840
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2586
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2364
int GetSize() const
Definition: BOpcodeHandler.h:1625
void SetPoints(float const *s, float const *e) alter
Definition: BOpcodeHandler.h:6030
int GetDown() const
Definition: BOpcodeHandler.h:4724
short m_forced_color_cut_face_value
For internal use only.
Definition: BOpcodeHandler.h:2839
type for 'buffer options' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2514
bool Find_Item(BStreamFileToolkit &tk, ID_Key key) const
Definition: BOpcodeHandler.h:677
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4349
void SetStart(float const *s) alter
Definition: BOpcodeHandler.h:6546
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4392
void SetCenter(float x, float y, float z) alter
Definition: BOpcodeHandler.h:6566
char const * GetSphereTessellations() const
Definition: BOpcodeHandler.h:4105
self-explanatory
Definition: BOpcodeHandler.h:2688
TK_Status GetData(BStreamFileToolkit &tk, unsigned short &s) alter
Definition: BOpcodeHandler.h:291
void floats_to_bytes(float const *in, unsigned char alter *out, int count) const
for internal use only
Definition: BOpcodeHandler.h:622
void SetColorLineContrastLockMask(int m) alter
Definition: BOpcodeHandler.h:3384
int GetGeometry() const
Definition: BOpcodeHandler.h:4656
TK_Spot_Light()
Definition: BOpcodeHandler.h:6410
refer to HC_Set_Heuristics for description
Definition: BOpcodeHandler.h:4400
for further expansion
Definition: BOpcodeHandler.h:5619
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2599
type for NURBS curve options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2637
region is a mask region
Definition: BOpcodeHandler.h:8034
compress on load to graphics hardware
Definition: BOpcodeHandler.h:7261
float GetHlrDimFactor() const
Definition: BOpcodeHandler.h:3915
float m_compression_quality
Definition: BOpcodeHandler.h:7337
TKO_Text_Options
Definition: BOpcodeHandler.h:6986
TKO_Color_Channel_Lock_Bits
Definition: BOpcodeHandler.h:2709
void SetSimpleShadowLight(float x, float y, float z) alter
Definition: BOpcodeHandler.h:4171
void SetOptions(int o) alter
Definition: BOpcodeHandler.h:8019
BBaseOpcodeHandler *** m_primitives
for each level, an array of opcode handler pointers that store the primitives
Definition: BOpcodeHandler.h:1439
int m_camera_length
Definition: BOpcodeHandler.h:7580
int m_to_variant
internal use
Definition: BOpcodeHandler.h:1384
mask of bits in second byte
Definition: BOpcodeHandler.h:2645
Handles the TKE_XML opcode.
Definition: BOpcodeHandler.h:8190
void SetColorWindowForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3649
void SetProjection(int p) alter
Definition: BOpcodeHandler.h:5543
char alter * GetBytes() alter
Definition: BOpcodeHandler.h:7210
TK_Terminator(char opcode, bool is_file_terminator=true)
Definition: BOpcodeHandler.h:1042
char * m_bytes
Definition: BOpcodeHandler.h:7322
Handles the TKE_External_Reference opcodes.
Definition: BOpcodeHandler.h:8275
Definition: BOpcodeHandler.h:4942
TK_Material()
Definition: BOpcodeHandler.h:8172
int GetSimpleReflection() const
Definition: BOpcodeHandler.h:4226
void SetGeometry(int m) alter
Definition: BOpcodeHandler.h:4704
virtual TK_Status Error(char const *msg=0) const
controls whether layers greater than 1 are considered as inputs to a shader plugin (and therefore ski...
Definition: BOpcodeHandler.h:7463
virtual TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, int variant=0) alter
int m_allocated
Definition: BOpcodeHandler.h:6052
void SetTolerance(float t) alter
Definition: BOpcodeHandler.h:5773
unsigned short m_simple_shadow
For internal use only.
Definition: BOpcodeHandler.h:2933
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2563
void SetSimpleReflection(int m) alter
Definition: BOpcodeHandler.h:4224
type for 'cut geometry' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2427
Handles the TKE_Repeat_Object opcode.
Definition: BOpcodeHandler.h:1379
int alter * GetIndices() alter
Definition: BOpcodeHandler.h:5333
char * m_string
Definition: BOpcodeHandler.h:2243
self-explanatory
Definition: BOpcodeHandler.h:2684
char alter * GetXML() alter
Definition: BOpcodeHandler.h:8222
int GetSimpleShadow() const
Definition: BOpcodeHandler.h:4158
int alter * GetIndices() alter
Definition: BOpcodeHandler.h:5386
void SetOrtho(float x, float y, float z) alter
Definition: BOpcodeHandler.h:6712
void SetSimpleShadow(int m) alter
Definition: BOpcodeHandler.h:4152
""
Definition: BOpcodeHandler.h:7460
type for 'simple shadow' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2441
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4394
int m_count
Definition: BOpcodeHandler.h:6051
int const * GetSizes() const
Definition: BOpcodeHandler.h:5395
int GetColorMarkerForcedLockMask() const
Definition: BOpcodeHandler.h:3608
void SetGloss(float g) alter
Definition: BOpcodeHandler.h:1931
void SetNext(HT_NURBS_Trim *next)
Definition: BOpcodeHandler.h:6211
lighting interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2304
char m_num_cutoffs
For internal use only.
Definition: BOpcodeHandler.h:2894
void Remember_Item(BStreamFileToolkit &tk, ID_Key key) const
Definition: BOpcodeHandler.h:675
int m_debug_length
Definition: BOpcodeHandler.h:67
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1722
Handles the TKE_NURBS_Curve opcode.
Definition: BOpcodeHandler.h:6099
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1655
""
Definition: BOpcodeHandler.h:7548
int GetEncoding() const
Definition: BOpcodeHandler.h:7121
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2593
hard edge angle limit; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2662
void SetFogLimits(float const *l) alter
Definition: BOpcodeHandler.h:3066
Handles the TKE_Conditions opcode.
Definition: BOpcodeHandler.h:5116
int GetInternalSelectionLimit() const
Definition: BOpcodeHandler.h:4475
float m_surface_max_facet_width
For internal use only.
Definition: BOpcodeHandler.h:2908
char m_blue_mapping
Definition: BOpcodeHandler.h:7589
float * m_points
Definition: BOpcodeHandler.h:6811
void SetPixelThreshold(int c) alter
Definition: BOpcodeHandler.h:4497
unsigned char m_optionals
Definition: BOpcodeHandler.h:6259
int GetColorTextContrastForcedLockMask() const
Definition: BOpcodeHandler.h:3861
unsigned char m_shadow_map_samples
For internal use only.
Definition: BOpcodeHandler.h:2943
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1654
int GetTextRegionOptions() const
Definition: BOpcodeHandler.h:7130
short m_forced_color_marker_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:2830
void SetFollow(bool f) alter
Definition: BOpcodeHandler.h:1356
refer to HC_Define_Texture
Definition: BOpcodeHandler.h:7465
int m_value
internal use; specifies what values to set for boolean options. For internal use only.
Definition: BOpcodeHandler.h:4627
char * m_names
for internal use only
Definition: BOpcodeHandler.h:5697
refer to ::HC_Conditional_Action
Definition: BOpcodeHandler.h:5154
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2361
self-explanatory
Definition: BOpcodeHandler.h:2679
short m_forced_color_edge_mask
For internal use only.
Definition: BOpcodeHandler.h:2808
int GetGeometry() const
Definition: BOpcodeHandler.h:2095
TK_Dictionary_Locater()
Definition: BOpcodeHandler.h:1608
self-explanatory
Definition: BOpcodeHandler.h:5436
self-explanatory
Definition: BOpcodeHandler.h:2699
""
Definition: BOpcodeHandler.h:7497
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4895
""
Definition: BOpcodeHandler.h:4842
""
Definition: BOpcodeHandler.h:7519
""
Definition: BOpcodeHandler.h:7481
int GetInternalPolylineSelectionLimit() const
Definition: BOpcodeHandler.h:4485
float const * GetMatrix() const
Definition: BOpcodeHandler.h:4799
void SetLodThresholdType(int v) alter
Definition: BOpcodeHandler.h:4030
void increase_nesting(BStreamFileToolkit &tk, int amount=1) alter
for internal use only
Definition: BOpcodeHandler.h:649
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4382
int m_index
Definition: BOpcodeHandler.h:1306
void SetAxis(float x, float y, float z) alter
Definition: BOpcodeHandler.h:6700
float size
the size. Units are specified separately in size_units
Definition: BOpcodeHandler.h:7039
bool Tagging(BStreamFileToolkit &tk) const
Definition: BOpcodeHandler.h:179
short m_forced_color_window_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:2820
virtual TK_Status Read(BStreamFileToolkit &tk) alter=0
TK_Enumerated(unsigned char opcode)
Definition: BOpcodeHandler.h:4948
void SetCutGeometryColorMatch(int m) alter
Definition: BOpcodeHandler.h:4136
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4387
unsigned char m_buffer_options_value
For internal use only.
Definition: BOpcodeHandler.h:2846
float alter * GetPoints() alter
Definition: BOpcodeHandler.h:6849
""
Definition: BOpcodeHandler.h:7444
self-explanatory
Definition: BOpcodeHandler.h:2710
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2600
refer to HC_Set_Rendering_Options
Definition: BOpcodeHandler.h:4934
void SetBumpName(int length) alter
Definition: BOpcodeHandler.h:1924
void SetLodTolerance(float v) alter
Definition: BOpcodeHandler.h:3989
int m_offset
internal use
Definition: BOpcodeHandler.h:1604
""
Definition: BOpcodeHandler.h:7473
char m_alpha_mapping
Definition: BOpcodeHandler.h:7590
float alter * GetRadii() alter
Definition: BOpcodeHandler.h:6864
unsigned char m_buffer_options_mask
For internal use only.
Definition: BOpcodeHandler.h:2845
void SetFaceDisplacement(int d) alter
Definition: BOpcodeHandler.h:3044
float GetInner() const
Definition: BOpcodeHandler.h:6444
extra item for selectability; refer to HC_Set_Selectability for a description
Definition: BOpcodeHandler.h:1692
float m_renderer_cutoff
for internal use only
Definition: BOpcodeHandler.h:5706
void SetEnvironmentName(int length) alter
Definition: BOpcodeHandler.h:1915
type for 'shadow map' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2465
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4381
short m_lock_color_marker_mask
For internal use only.
Definition: BOpcodeHandler.h:2770
char alter * GetSegment() alter
Definition: BOpcodeHandler.h:7931
int m_mask
internal use; specifies which visibility settings are active (and hence, which are valid)...
Definition: BOpcodeHandler.h:4626
char * m_comment
internal use
Definition: BOpcodeHandler.h:979
type for 'simple reflection' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2475
float * m_points
Definition: BOpcodeHandler.h:8047
""
Definition: BOpcodeHandler.h:4884
char const * GetCylinderTessellations() const
Definition: BOpcodeHandler.h:4088
int GetExtras() const
Definition: BOpcodeHandler.h:4490
unsigned char m_greeking_mode
for internal use only
Definition: BOpcodeHandler.h:5714
void SetLodThresholds(int c, float const *r=0) alter
Definition: BOpcodeHandler.h:4036
int GetFaceDisplacement() const
Definition: BOpcodeHandler.h:3046
void SetIndex(int i) alter
Definition: BOpcodeHandler.h:1200
void SetFogLimits(float n, float f) alter
Definition: BOpcodeHandler.h:3064
float GetEnd() const
Definition: BOpcodeHandler.h:6148
self-explanatory
Definition: BOpcodeHandler.h:7276
TK_Polypoint(unsigned char opcode)
Definition: BOpcodeHandler.h:6061
void SetIndex(int i) alter
Definition: BOpcodeHandler.h:4958
""
Definition: BOpcodeHandler.h:4854
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2597
void SetColorEdgeContrastForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3764
////
Definition: BOpcodeHandler.h:732
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2372
float m_simple_reflection_opacity
For internal use only.
Definition: BOpcodeHandler.h:2947
channel m_environment
internal use; note: environment & bump are never a simple RGB type color
Definition: BOpcodeHandler.h:1781
self-explanatory
Definition: BOpcodeHandler.h:1736
void SetColorMarkerContrastForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3821
""
Definition: BOpcodeHandler.h:7486
type for contour options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2557
void SetAmbientUpVector(float x, float y, float z) alter
Definition: BOpcodeHandler.h:4270
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2332
int m_maximum_extent
internal use; maximum extent
Definition: BOpcodeHandler.h:4427
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2598
unsigned char m_clamp
For internal use only.
Definition: BOpcodeHandler.h:2889
void SetStereoDistance(float d) alter
Definition: BOpcodeHandler.h:3896
int GetValue() const
Definition: BOpcodeHandler.h:4667
TKO_Camera_Projection
Definition: BOpcodeHandler.h:5433
////
Definition: BOpcodeHandler.h:745
float const * GetOrientation() const
Definition: BOpcodeHandler.h:4614
type for transparency field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2421
int GetQuantization() const
Definition: BOpcodeHandler.h:3036
void SetTransmission(float const *rgb) alter
Definition: BOpcodeHandler.h:1885
void SetName(int length) alter
Definition: BOpcodeHandler.h:7629
TK_User_Value()
Definition: BOpcodeHandler.h:5414
type for 'mask transform' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2488
near limit setting
Definition: BOpcodeHandler.h:5446
void SetCylinderTessellations(int c, char const *n=0) alter
Definition: BOpcodeHandler.h:4077
int GetColorVertexContrastForcedLockMask() const
Definition: BOpcodeHandler.h:3838
self-explanatory
Definition: BOpcodeHandler.h:7258
void SetLodAlgorithm(int v) alter
Definition: BOpcodeHandler.h:3969
choose or simulate an italic variation
Definition: BOpcodeHandler.h:5625
float const * GetPoints() const
Definition: BOpcodeHandler.h:6036
""
Definition: BOpcodeHandler.h:4871
int m_count
Definition: BOpcodeHandler.h:8046
unsigned char m_flags
Definition: BOpcodeHandler.h:6814
int GetAction() const
Definition: BOpcodeHandler.h:5200
float GetSimpleShadowOpacity() const
Definition: BOpcodeHandler.h:4204
refer to HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:4825
void SetOptions(int length) alter
Definition: BOpcodeHandler.h:5244
void SetGeometry(int m) alter
Definition: BOpcodeHandler.h:1967
TK_Geometry_Attributes()
Definition: BOpcodeHandler.h:1487
int GetMaximumExtent() const
Definition: BOpcodeHandler.h:4503
char alter * GetSphereTessellations() alter
Definition: BOpcodeHandler.h:4107
Handles the TKE_Clip_Rectangle opcode.
Definition: BOpcodeHandler.h:7990
refer to HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:4824
TKO_Font_Greeking_Modes
Definition: BOpcodeHandler.h:5678
type for 'simple shadow' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2451
self-explanatory
Definition: BOpcodeHandler.h:6382
void SetIndex(float i) alter
Definition: BOpcodeHandler.h:1935
void SetGreenMapping(int p) alter
Definition: BOpcodeHandler.h:7692
""
Definition: BOpcodeHandler.h:7520
unsigned char m_fallback
For internal use only.
Definition: BOpcodeHandler.h:2897
unsigned char m_compression
Definition: BOpcodeHandler.h:7332
type for 'simple reflection' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2473
type for 'mask transform' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2492
char const * GetCondition() const
Definition: BOpcodeHandler.h:1280
Handles the TKE_Text_Font opcode.
Definition: BOpcodeHandler.h:5692
int GetLodOptionsMask() const
Definition: BOpcodeHandler.h:3963
void SetBufferOptionsMask(int v) alter
Definition: BOpcodeHandler.h:3878
struct vlist_s * m_current_working
holds the geometry list in progress. struct vlist_s the incomplete type for vlist_t (used until vlist...
Definition: BOpcodeHandler.h:1443
extended bit for HLR suboptions; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2537
int m_flags
internal use
Definition: BOpcodeHandler.h:939
bool m_needs_tag
Indicate if this object explicitly needs tagging.
Definition: BOpcodeHandler.h:65
void SetAntiAlias(int m) alter
Definition: BOpcodeHandler.h:4302
character is invisible
Definition: BOpcodeHandler.h:7024
indicates that the 2nd byte should be written
Definition: BOpcodeHandler.h:2644
int GetColorFaceLockValue() const
Definition: BOpcodeHandler.h:3147
char const * GetDiffuseName() const
Definition: BOpcodeHandler.h:1848
void SetColorForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3511
""
Definition: BOpcodeHandler.h:7509
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4330
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1706
Truevision TGA.
Definition: BOpcodeHandler.h:7280
float const * GetOrderedWeights() const
Definition: BOpcodeHandler.h:4544
""
Definition: BOpcodeHandler.h:7454
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4371
HLONG * m_values
for internal use only
Definition: BOpcodeHandler.h:5303
self-explanatory
Definition: BOpcodeHandler.h:2695
int GetOptions() const
Definition: BOpcodeHandler.h:7424
float const * GetValueScale() const
Definition: BOpcodeHandler.h:7724
Handles the TKE_User_Index opcode.
Definition: BOpcodeHandler.h:5347
int m_size
Definition: BOpcodeHandler.h:7829
unsigned char * m_isoline_weights_unit
for internal use only.
Definition: BOpcodeHandler.h:2873
float const * GetValues() const
Definition: BOpcodeHandler.h:2203
unsigned short alter * GetOptions() alter
Definition: BOpcodeHandler.h:5287
void SetMinor(float const *m) alter
Definition: BOpcodeHandler.h:6641
int GetParameterSource() const
Definition: BOpcodeHandler.h:7674
reserved
Definition: BOpcodeHandler.h:7003
fill edges of characters to improve appearance ar small sizes
Definition: BOpcodeHandler.h:5623
BBaseOpcodeHandler(int op)
Definition: BOpcodeHandler.h:89
void SetForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3475
char const * GetOptions() const
Definition: BOpcodeHandler.h:5246
Definition: BOpcodeHandler.h:4985
self-explanatory
Definition: BOpcodeHandler.h:2697
type for 'mask transform' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2489
float const * GetImageTintColor() const
Definition: BOpcodeHandler.h:4291
TKO_Color_Channels
Definition: BOpcodeHandler.h:1733
self-explanatory
Definition: BOpcodeHandler.h:2715
TK_Status GetData(BStreamFileToolkit &tk, unsigned short *s, int n) alter
Definition: BOpcodeHandler.h:273
void SetColorLineContrastLockValue(int v) alter
Definition: BOpcodeHandler.h:3395
type for HSR field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2409
Handles the TKE_Dictionary opcode.
Definition: BOpcodeHandler.h:1566
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2325
only use hardware fonts
Definition: BOpcodeHandler.h:5659
float const * GetPosition() const
Definition: BOpcodeHandler.h:7116
float const * GetTransmission() const
Definition: BOpcodeHandler.h:1891
int GetCaps() const
Definition: BOpcodeHandler.h:6783
add an overline to the font
Definition: BOpcodeHandler.h:5617
int GetColorEdgeLockMask() const
Definition: BOpcodeHandler.h:3159
only use Hoops defined (stroked) fonts
Definition: BOpcodeHandler.h:5661
void SetExtras(int e) alter
Definition: BOpcodeHandler.h:4488
bool GetStreaming() const
Definition: BOpcodeHandler.h:5105
void SetMoveUp(int m) alter
Definition: BOpcodeHandler.h:4752
type for transparency field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2415
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2355
type for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2527
void SetNames(char const *names) alter
Definition: BOpcodeHandler.h:5754
char m_param_function
Definition: BOpcodeHandler.h:7591
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1700
virtual TK_Status Execute(BStreamFileToolkit &tk) alter
void SetCutGeometryTolerance(float m) alter
Definition: BOpcodeHandler.h:4141
char * m_definition
Definition: BOpcodeHandler.h:7945
char m_num_cylinder
For internal use only.
Definition: BOpcodeHandler.h:2917
int m_surface_budget
For internal use only.
Definition: BOpcodeHandler.h:2903
ID_Key m_key
for internal use only
Definition: BOpcodeHandler.h:1510
TKO_Enumerations
Definition: BOpcodeHandler.h:4808
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2609
float GetGloss() const
Definition: BOpcodeHandler.h:1933
type for 'cut geometry' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2434
float * m_isoline_weights_value
for internal use only.
Definition: BOpcodeHandler.h:2872
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4396
float alter * GetPoints() alter
Definition: BOpcodeHandler.h:6139
void SetTiling(int p) alter
Definition: BOpcodeHandler.h:7717
char const * GetDefinition() const
Definition: BOpcodeHandler.h:7863
int GetVisibilityLockMask() const
Definition: BOpcodeHandler.h:3090
Definition: BStream.h:238
int GetValue(int index=0) const
Definition: BOpcodeHandler.h:3011
void SetValueScale(float v1, float v2) alter
Definition: BOpcodeHandler.h:7722
int GetBufferOptionsMask() const
Definition: BOpcodeHandler.h:3880
indicates presence of extended bits
Definition: BOpcodeHandler.h:2494
float * m_weights
Definition: BOpcodeHandler.h:6263
Handles the TKE_Marker, TKE_Text_Path TKE_Distant_Light, and TKE_Local_Light opcodes.
Definition: BOpcodeHandler.h:5958
TK_PolyCylinder()
Definition: BOpcodeHandler.h:6819
unsigned char m_tq
internal use; low half technology, high half quantization. For internal use only. ...
Definition: BOpcodeHandler.h:2753
void SetMirrorName(char const *name) alter
Definition: BOpcodeHandler.h:1872
char * m_name
Definition: BOpcodeHandler.h:7944
short m_forced_color_line_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:2829
HLONG m_value
for internal use only
Definition: BOpcodeHandler.h:5410
orthographic projection
Definition: BOpcodeHandler.h:5438
float const * GetWindow() const
Definition: BOpcodeHandler.h:5593
""
Definition: BOpcodeHandler.h:4864
unsigned char m_type
Definition: BOpcodeHandler.h:7164
void SetSize(float value, int units=TKO_Generic_Size_Unspecified) alter
Definition: BOpcodeHandler.h:5003
int GetCutGeometryLevel() const
Definition: BOpcodeHandler.h:4133
extra item for selectability; refer to HC_Set_Selectability for a description
Definition: BOpcodeHandler.h:1693
float alter * GetPoints() alter
Definition: BOpcodeHandler.h:6231
mask of bits requiring extended
Definition: BOpcodeHandler.h:2495
common/shared items; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1646
float const * GetVKnots() const
Definition: BOpcodeHandler.h:6309
TK_Status ReadAscii(BStreamFileToolkit &tk) alter
Deprecated.
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4367
int GetCompression() const
Definition: BOpcodeHandler.h:7429
int const * GetRenderers() const
Definition: BOpcodeHandler.h:5841
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1710
int m_index
internal use
Definition: BOpcodeHandler.h:2063
void SetRendererCutoffUnits(int u) alter
Definition: BOpcodeHandler.h:5849
HT_NURBS_Trim * m_next
Definition: BOpcodeHandler.h:6184
TK_Open_Segment()
Definition: BOpcodeHandler.h:1111
void SetColorFaceContrastLockMask(int m) alter
Definition: BOpcodeHandler.h:3269
type for HSR field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2402
char alter * GetName() alter
Definition: BOpcodeHandler.h:7390
void SetMinor(float x, float y, float z) alter
Definition: BOpcodeHandler.h:6637
type for 'cut geometry' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2438
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2622
int GetColorTextLockMask() const
Definition: BOpcodeHandler.h:3228
self-explanatory
Definition: BOpcodeHandler.h:6971
type for 'simple shadow' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2452
void SetCutGeometry(int m) alter
Definition: BOpcodeHandler.h:4126
type for 'cut geometry' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2428
Definition: BOpcodeHandler.h:1766
void SetValue(int v) alter
Definition: BOpcodeHandler.h:5749
void SetName(int length) alter
Definition: BOpcodeHandler.h:7215
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4901
int GetGeometry() const
Definition: BOpcodeHandler.h:1982
int GetRendererCutoffUnits() const
Definition: BOpcodeHandler.h:5851
short m_channels
internal use
Definition: BOpcodeHandler.h:1761
float m_hlr_transparency_cutoff
For internal use only.
Definition: BOpcodeHandler.h:2852
self-explanatory
Definition: BOpcodeHandler.h:6977
float m_preference_cutoff
for internal use only
Definition: BOpcodeHandler.h:5707
void SetColorBackLockValue(int v) alter
Definition: BOpcodeHandler.h:3326
type for 'simple shadow' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2444
char * m_condition
Definition: BOpcodeHandler.h:1309
type for 'mask transform' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2487
refer to HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:4836
void SetLodRatio(float r) alter
Definition: BOpcodeHandler.h:4012
void SetView(int length) alter
Definition: BOpcodeHandler.h:5558
float m_start
Definition: BOpcodeHandler.h:6109
TK_Ellipse(unsigned char opcode)
Definition: BOpcodeHandler.h:6608
char alter * GetView() alter
Definition: BOpcodeHandler.h:5562
int GetCount() const
Definition: BOpcodeHandler.h:6851
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2591
""
Definition: BOpcodeHandler.h:7531
type for contour options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2552
TK_Heuristics()
Definition: BOpcodeHandler.h:4442
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4911
int GetMaskTransform() const
Definition: BOpcodeHandler.h:4122
int GetColorTextContrastForcedLockValue() const
Definition: BOpcodeHandler.h:3872
type for 'mask transform' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2498
void SetSpecular(float r, float g, float b) alter
Definition: BOpcodeHandler.h:1853
scale factor for width
Definition: BOpcodeHandler.h:5608
void SetInternalShellSelectionLimit(int i) alter
Definition: BOpcodeHandler.h:4478
lighting interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2299
void SetRef1(float const *r) alter
Definition: BOpcodeHandler.h:6938
TK_Status GetData(BStreamFileToolkit &tk, char &c) alter
Definition: BOpcodeHandler.h:279
z values, 32-bit floats in [0..1] range
Definition: BOpcodeHandler.h:7247
char m_param_source
Definition: BOpcodeHandler.h:7584
self-explanatory
Definition: BOpcodeHandler.h:2683
BBaseOpcodeHandler alter * Opcode_Handler(BStreamFileToolkit &tk, unsigned char op) const
Definition: BOpcodeHandler.h:661
Internal_Translator::Index_Key_Pair alter * m_item
internal use; cache lookup in Pending cases
Definition: BOpcodeHandler.h:1573
void SetEncoding(int e) alter
Definition: BOpcodeHandler.h:7231
type for 'quantization' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2508
internal use, indicates shift for placement of extended section
Definition: BOpcodeHandler.h:1679
void SetValues(int count, float const *values=0) alter
Definition: BOpcodeHandler.h:2201
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2590
int m_buffer_size
Definition: BOpcodeHandler.h:8106
ID_Key GetKey() const
Definition: BOpcodeHandler.h:1527
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2358
void SetValue(int v0, int v1=0, int v2=0) alter
Definition: BOpcodeHandler.h:3009
unsigned short m_simple_shadow_resolution
For internal use only.
Definition: BOpcodeHandler.h:2935
void SetColorEdgeForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3557
void SetCompression(int c) alter
Definition: BOpcodeHandler.h:7427
int const * GetCounts() const
Definition: BOpcodeHandler.h:6956
type for 'shadow map' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2464
float const * GetEnd() const
Definition: BOpcodeHandler.h:6773
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1681
mask for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2533
type for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2525
16-bit colormap indices
Definition: BOpcodeHandler.h:7243
int GetOrderedWeightsMask() const
Definition: BOpcodeHandler.h:4534
TK_Status PutData(BStreamFileToolkit &tk, float const *f, int n) alter
Definition: BOpcodeHandler.h:404
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2395
BBaseOpcodeHandler * m_referee
for internal use only
Definition: BOpcodeHandler.h:7884
void SetTarget(float const *t) alter
Definition: BOpcodeHandler.h:6432
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2610
void SetTransmissionName(int length) alter
Definition: BOpcodeHandler.h:1889
refer to HC_Set_Heuristics for description
Definition: BOpcodeHandler.h:4403
ID_Key m_renumbered_key
for internal use only
Definition: BOpcodeHandler.h:1225
Handles the TKE_Modelling_Matrix and TKE_Texture_Matrix opcodes.
Definition: BOpcodeHandler.h:4778
""
Definition: BOpcodeHandler.h:7442
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2616
""
Definition: BOpcodeHandler.h:4868
type for 'shadow map' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2459
void SetVisibilityLockMask(int m) alter
Definition: BOpcodeHandler.h:3085
int GetColorWindowContrastForcedLockMask() const
Definition: BOpcodeHandler.h:3700
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2604
short m_lock_color_text_value
For internal use only.
Definition: BOpcodeHandler.h:2773
TKO_Font_Options
Definition: BOpcodeHandler.h:5601
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2605
shift corresponding to extended bit
Definition: BOpcodeHandler.h:1748
void SetColorLineContrastForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3787
TKO_Texture_Channel_Mappings
Definition: BOpcodeHandler.h:7543
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4390
type for 'quantization' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2507
int m_number_of_items
internal use
Definition: BOpcodeHandler.h:1571
void SetEmission(float const *rgb) alter
Definition: BOpcodeHandler.h:1900
refer to HC_Define_Texture
Definition: BOpcodeHandler.h:7464
char alter * GetCondition() alter
Definition: BOpcodeHandler.h:1352
int GetGreenMapping() const
Definition: BOpcodeHandler.h:7694
type for 'cut geometry' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2433
short m_lock_color_cut_edge_mask
For internal use only.
Definition: BOpcodeHandler.h:2798
self-explanatory
Definition: BOpcodeHandler.h:5892
""
Definition: BOpcodeHandler.h:7476
type for 'simple reflection' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2470
float m_index
internal use
Definition: BOpcodeHandler.h:2112
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2623
""
Definition: BOpcodeHandler.h:7461
void SetPoints(float const *s, float const *m, float const *e, float const *c=0) alter
Definition: BOpcodeHandler.h:6576
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4320
void SetValue(int v) alter
Definition: BOpcodeHandler.h:4463
indicates presence of extended bits
Definition: BOpcodeHandler.h:2476
refer to HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:4835
shift of extended section
Definition: BOpcodeHandler.h:4336
void SetSimpleShadowLight(float const *l) alter
Definition: BOpcodeHandler.h:4177
int m_general_displacement
For internal use only.
Definition: BOpcodeHandler.h:2968
Handles the TKE_Color opcode.
Definition: BOpcodeHandler.h:1947
BBaseOpcodeHandler * m_referee
for internal use only
Definition: BOpcodeHandler.h:1227
type for 'mask transform' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2497
TK_Status PutData(BStreamFileToolkit &tk, int const &i) alter
Definition: BOpcodeHandler.h:440
char const * GetSegment() const
Definition: BOpcodeHandler.h:1259
////
Definition: BOpcodeHandler.h:739
int m_definition_length
Definition: BOpcodeHandler.h:7943
TK_Line(unsigned char opcode=TKE_Line)
Definition: BOpcodeHandler.h:6014
int m_stage
The writing stage.
Definition: BOpcodeHandler.h:62
If this bit is set, a thumbnail of this view immediately follows.
Definition: BOpcodeHandler.h:5448
int GetNURBSOptionsValue() const
Definition: BOpcodeHandler.h:3941
void SetApplicationMode(int p) alter
Definition: BOpcodeHandler.h:7727
float * m_planes
internal use
Definition: BOpcodeHandler.h:6466
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2331
common/shared items; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1643
short m_lock_color_edge_mask
For internal use only.
Definition: BOpcodeHandler.h:2766
void SetMirror(float r, float g, float b) alter
Definition: BOpcodeHandler.h:1868
int GetLodFallback() const
Definition: BOpcodeHandler.h:3995
s3 texture compression level 3
Definition: BOpcodeHandler.h:7251
""
Definition: BOpcodeHandler.h:4875
Handles the TKE_PolyCylinder opcode.
Definition: BOpcodeHandler.h:6808
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2624
""
Definition: BOpcodeHandler.h:7448
char m_type
internal use
Definition: BOpcodeHandler.h:5912
float alter * GetLodRatios() alter
Definition: BOpcodeHandler.h:4027
TKO_Thumbnail_Formats
Definition: BOpcodeHandler.h:7756
unsigned short m_shadow_map
For internal use only.
Definition: BOpcodeHandler.h:2941
void SetComment(int length) alter
Definition: BOpcodeHandler.h:1017
TK_Bounding(unsigned char opcode, float *center, float radius)
Definition: BOpcodeHandler.h:5925
float m_stereo_distance
For internal use only.
Definition: BOpcodeHandler.h:2914
void SetToleranceUnits(int u) alter
Definition: BOpcodeHandler.h:5778
int m_length
Definition: BOpcodeHandler.h:5217
float GetLineSpacing() const
Definition: BOpcodeHandler.h:5810
type for HSR field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2404
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2569
int m_length
Definition: BOpcodeHandler.h:2242
int GetCount() const
Definition: BOpcodeHandler.h:6227
int GetColorBackLockValue() const
Definition: BOpcodeHandler.h:3331
float alter * GetMatrix() alter
Definition: BOpcodeHandler.h:4801
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2323
char const * GetNames() const
Definition: BOpcodeHandler.h:5758
int GetLength() const
Definition: BOpcodeHandler.h:2207
void SetSegment(int length) alter
Definition: BOpcodeHandler.h:1255
int m_placeholder
internal use
Definition: BOpcodeHandler.h:1569
format mask
Definition: BOpcodeHandler.h:7255
void SetSimpleShadowPlane(float const *p) alter
Definition: BOpcodeHandler.h:4189
void SetLodMaxDegree(int v) alter
Definition: BOpcodeHandler.h:3985
float m_vertex_decimation
For internal use only.
Definition: BOpcodeHandler.h:2971
wchar_t const * GetString() const
Definition: BOpcodeHandler.h:8340
void SetDisplayListLevel(int m) alter
Definition: BOpcodeHandler.h:4147
clip region is to be specified in object space.
Definition: BOpcodeHandler.h:8032
int m_length
Definition: BOpcodeHandler.h:5118
int GetGeometryOptionsMask() const
Definition: BOpcodeHandler.h:4112
extended bit
Definition: BOpcodeHandler.h:4334
void SetMirror(float const *rgb) alter
Definition: BOpcodeHandler.h:1870
void SetRadius(float r) alter
Definition: BOpcodeHandler.h:6695
int m_allocated
Definition: BOpcodeHandler.h:1218
void SetShadowMap(int m) alter
Definition: BOpcodeHandler.h:4208
int GetCutGeometryColorMatch() const
Definition: BOpcodeHandler.h:4138
void SetOblique(float const *o) alter
Definition: BOpcodeHandler.h:5536
unsigned char size_units
specified with enum TKO_Font_Size_Units
Definition: BOpcodeHandler.h:7049
Handles the TKE_External_Reference_Unicode opcodes.
Definition: BOpcodeHandler.h:8314
float m_outer
for internal use only
Definition: BOpcodeHandler.h:6403
TKO_Image_Formats
Definition: BOpcodeHandler.h:7241
Handles the TKE_Polyline and TKE_Polygon opcodes.
Definition: BOpcodeHandler.h:6049
char m_apply_mode
Definition: BOpcodeHandler.h:7597
""
Definition: BOpcodeHandler.h:7545
void SetColorEdgeLockValue(int v) alter
Definition: BOpcodeHandler.h:3165
""
Definition: BOpcodeHandler.h:4850
int GetHlrOptions() const
Definition: BOpcodeHandler.h:3911
int m_pixel_threshold
internal use; pixel threshold
Definition: BOpcodeHandler.h:4426
void SetAxis(float x1, float y1, float z1, float x2, float y2, float z2) alter
Definition: BOpcodeHandler.h:6760
int m_count
internal use
Definition: BOpcodeHandler.h:6467
char alter * GetLoggingString() alter
Definition: BOpcodeHandler.h:231
""
Definition: BOpcodeHandler.h:7479
int m_internal_shell
internal use
Definition: BOpcodeHandler.h:4421
char alter * GetNames() alter
Definition: BOpcodeHandler.h:5760
void SetVector(float x, float y, float z) alter
Definition: BOpcodeHandler.h:4519
float const * GetLimits() const
Definition: BOpcodeHandler.h:6650
unsigned char m_type
Definition: BOpcodeHandler.h:6185
void SetEmissionName(char const *name) alter
Definition: BOpcodeHandler.h:1902
float GetConcentration() const
Definition: BOpcodeHandler.h:6449
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2320
void SetPosition(float x, float y, float z) alter
Definition: BOpcodeHandler.h:5491
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2564
mask for either fitting setting
Definition: BOpcodeHandler.h:7002
int GetColorMarkerLockMask() const
Definition: BOpcodeHandler.h:3205
self-explanatory
Definition: BOpcodeHandler.h:2680
Handles the TKE_Bounding, and TKE_Bounding_Info opcodes.
Definition: BOpcodeHandler.h:5909
unsigned char m_projection
internal use
Definition: BOpcodeHandler.h:5463
char m_tint_effect
For internal use only.
Definition: BOpcodeHandler.h:2878
int GetCount() const
Definition: BOpcodeHandler.h:6137
""
Definition: BOpcodeHandler.h:7534
unsigned char m_degree[2]
Definition: BOpcodeHandler.h:6260
int m_force_defer
internal use; hard extent
Definition: BOpcodeHandler.h:4431
float GetOuter() const
Definition: BOpcodeHandler.h:6439
float const * GetPosition() const
Definition: BOpcodeHandler.h:6426
short m_forced_color_window_mask
For internal use only.
Definition: BOpcodeHandler.h:2816
int m_index
Definition: BOpcodeHandler.h:1186
const int TK_Image_Bytes_Per_Pixel[]
Specifies the number of bytes per pixel for each format.
TK_Glyph_Definition()
Definition: BOpcodeHandler.h:7835
int GetColorForcedLockMask() const
Definition: BOpcodeHandler.h:3516
region is a clip region
Definition: BOpcodeHandler.h:8033
void SetVectorTolerance(float tol) alter
Definition: BOpcodeHandler.h:4529
int m_lock_color_value
For internal use only.
Definition: BOpcodeHandler.h:2763
int GetColorLockMask() const
Definition: BOpcodeHandler.h:3113
float const * GetStart() const
Definition: BOpcodeHandler.h:6771
self-explanatory
Definition: BOpcodeHandler.h:5444
char alter * GetLookup() alter
Definition: BOpcodeHandler.h:7228
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4364
self-explanatory
Definition: BOpcodeHandler.h:6979
self-explanatory
Definition: BOpcodeHandler.h:2689
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4359
TKO_Texture_Application_Modes
Definition: BOpcodeHandler.h:7558
int GetNURBSSurfaceBudget() const
Definition: BOpcodeHandler.h:3953
unsigned short m_tint_options
For internal use only.
Definition: BOpcodeHandler.h:2875
type for transparency field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2423
int m_maximum_extent_mode
internal use; maximum extent mode – int! argh...
Definition: BOpcodeHandler.h:4428
float alter * GetPoints() alter
Definition: BOpcodeHandler.h:6299
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1674
void SetName(int length) alter
Definition: BOpcodeHandler.h:7386
channel m_diffuse
internal use
Definition: BOpcodeHandler.h:1776
void SetRef2(float x, float y, float z) alter
Definition: BOpcodeHandler.h:6943
void SetDepthRange(float const *l) alter
Definition: BOpcodeHandler.h:4254
int GetNumSphereTessellations() const
Definition: BOpcodeHandler.h:4103
float * m_radii
Definition: BOpcodeHandler.h:6813
Handles the TKE_Camera opcode.
Definition: BOpcodeHandler.h:5457
self-explanatory
Definition: BOpcodeHandler.h:6972
int GetTransparentStyle() const
Definition: BOpcodeHandler.h:3026
int m_mask
internal use
Definition: BOpcodeHandler.h:2062
polyhedra will be instanced using their tristrip information
Definition: BOpcodeHandler.h:1366
adjust region left-to-right
Definition: BOpcodeHandler.h:6997
int GetSpace() const
Definition: BOpcodeHandler.h:2040
char alter * GetShaderSource() alter
Definition: BOpcodeHandler.h:7642
type for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2545
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4324
self-explanatory
Definition: BOpcodeHandler.h:2700
float m_index
internal use
Definition: BOpcodeHandler.h:1784
character slant
Definition: BOpcodeHandler.h:5607
void SetMask(int m) alter
Definition: BOpcodeHandler.h:4454
TK_Status GetData(BStreamFileToolkit &tk, float *f, int n) alter
Definition: BOpcodeHandler.h:262
int GetColorMarkerContrastForcedLockMask() const
Definition: BOpcodeHandler.h:3815
int GetSizeUnits() const
Definition: BOpcodeHandler.h:5770
extended bit for HLR suboptions; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2544
float m_start_u
Definition: BOpcodeHandler.h:6193
int GetJoinCutoffAngle() const
Definition: BOpcodeHandler.h:3061
int GetColorWindowLockValue() const
Definition: BOpcodeHandler.h:3262
unsigned short m_transparency_options
internal use; low nibble style, next peeling flags, then zsort
Definition: BOpcodeHandler.h:2926
self-explanatory
Definition: BOpcodeHandler.h:7757
void SetGeometryOptionsMask(int m) alter
Definition: BOpcodeHandler.h:4110
int m_total_size
the total size of the blind material data
Definition: BOpcodeHandler.h:8164
""
Definition: BOpcodeHandler.h:4861
int m_mask
internal use
Definition: BOpcodeHandler.h:1760
char m_interpolation
Definition: BOpcodeHandler.h:7585
char const * GetComment() const
Definition: BOpcodeHandler.h:1021
void SetPlane(float const *p) alter
Definition: BOpcodeHandler.h:6492
char alter * GetCylinderTessellations() alter
Definition: BOpcodeHandler.h:4090
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1704
Handles the TKE_Text and TKE_Text_With_Encoding opcodes.
Definition: BOpcodeHandler.h:7062
int GetColorBackForcedLockValue() const
Definition: BOpcodeHandler.h:3734
unsigned char m_size_units
for internal use only
Definition: BOpcodeHandler.h:5710
float const * GetWeights() const
Definition: BOpcodeHandler.h:6301
short m_lock_color_edge_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:2784
void SetColorFaceContrastForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3683
int m_length
Definition: BOpcodeHandler.h:8277
void SetColorTextLockValue(int v) alter
Definition: BOpcodeHandler.h:3234
float width_scale
adjustment to character width
Definition: BOpcodeHandler.h:7044
char m_param_offset
Definition: BOpcodeHandler.h:7598
int m_substage
Definition: BOpcodeHandler.h:6183
""
Definition: BOpcodeHandler.h:4863
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1707
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2356
float * m_weights
Definition: BOpcodeHandler.h:6191
""
Definition: BOpcodeHandler.h:7485
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2369
int m_lod_options_value
For internal use only.
Definition: BOpcodeHandler.h:2881
void SetDiffuseName(char const *name) alter
Definition: BOpcodeHandler.h:1842
void SetSimpleShadowColor(float r, float g, float b) alter
Definition: BOpcodeHandler.h:4194
type for 'shadow map' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2457
Window Space.
Definition: BOpcodeHandler.h:4969
unsigned char m_format
Definition: BOpcodeHandler.h:7330
char alter * GetDefinition() alter
Definition: BOpcodeHandler.h:7865
int GetColorMarkerContrastLockMask() const
Definition: BOpcodeHandler.h:3412
void SetView(char const *name) alter
Definition: BOpcodeHandler.h:5556
float const * GetPoints() const
Definition: BOpcodeHandler.h:6360
int m_length
Definition: BOpcodeHandler.h:7163
Handles the TKE_Rendering_Options opcode.
Definition: BOpcodeHandler.h:2747
Screen Space.
Definition: BOpcodeHandler.h:4968
""
Definition: BOpcodeHandler.h:4848
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2311
""
Definition: BOpcodeHandler.h:4851
self-explanatory
Definition: BOpcodeHandler.h:2714
TK_Status PutData(BStreamFileToolkit &tk, unsigned short const &s) alter
Definition: BOpcodeHandler.h:446
bump map
Definition: BOpcodeHandler.h:2718
char alter * GetImage() alter
Definition: BOpcodeHandler.h:7651
float const * GetPoints() const
Definition: BOpcodeHandler.h:6229
int Pass(BStreamFileToolkit &tk) const
Definition: BOpcodeHandler.h:168
short m_lock_color_vertex_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:2790
unsigned char m_units
for internal use only.
Definition: BOpcodeHandler.h:4988
mask of bits requiring extended
Definition: BOpcodeHandler.h:2477
int GetMask() const
Definition: BOpcodeHandler.h:4460
""
Definition: BOpcodeHandler.h:7510
void SetHlrFaceSortingAlgorithm(int a) alter
Definition: BOpcodeHandler.h:3925
type for 'technology' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2501
unsigned char m_flags
Definition: BOpcodeHandler.h:6525
bool m_terminate_file
internal use for hsx read-write only. This indicates if the TKE_Terminate is
Definition: BOpcodeHandler.h:1056
int GetColorVertexForcedLockValue() const
Definition: BOpcodeHandler.h:3757
self-explanatory
Definition: BOpcodeHandler.h:7259
self-explanatory
Definition: BOpcodeHandler.h:1738
HT_NURBS_Trim const * GetList() const
Definition: BOpcodeHandler.h:6245
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2578
void SetTransforms(int t) alter
Definition: BOpcodeHandler.h:5813
self-explanatory
Definition: BOpcodeHandler.h:7265
Definition: BOpcodeHandler.h:890
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4894
void SetLodCutoffs(int c, float const *r=0) alter
Definition: BOpcodeHandler.h:4054
int m_isoline_weight_count
for internal use only.
Definition: BOpcodeHandler.h:2871
void SetColorVertexForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3741
float const * GetPoints() const
Definition: BOpcodeHandler.h:6138
float const * GetKnots() const
Definition: BOpcodeHandler.h:6241
void SetPosition(float const *p) alter
Definition: BOpcodeHandler.h:7114
void GetPosition(float *p) const
Definition: BOpcodeHandler.h:5498
char * m_string
Definition: BOpcodeHandler.h:8240
""
Definition: BOpcodeHandler.h:7551
float const * GetEmission() const
Definition: BOpcodeHandler.h:1906
void SetColorVertexForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3752
int m_buffer_size_limit
For internal use only.
Definition: BOpcodeHandler.h:2847
The BBaseOpcodeHandler abstract class is used as a base for derived classes which manage logical piec...
Definition: BOpcodeHandler.h:60
""
Definition: BOpcodeHandler.h:4846
float const * GetDiffuseTextureTintColor() const
Definition: BOpcodeHandler.h:4299
type for 'shadow map' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2461
Pixels.
Definition: BOpcodeHandler.h:4971
int GetCount() const
Definition: BOpcodeHandler.h:6082
unsigned char m_hsr
internal use; low half hsr, high half thsr. For internal use only.
Definition: BOpcodeHandler.h:2752
char const * GetCondition() const
Definition: BOpcodeHandler.h:1347
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1713
float GetSimpleReflectionOpacity() const
Definition: BOpcodeHandler.h:4243
""
Definition: BOpcodeHandler.h:7530
void SetVisibilityLockValue(int v) alter
Definition: BOpcodeHandler.h:3096
color interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2291
void Reset() alter
internal use
Definition: BOpcodeHandler.h:1773
int m_hlr_line_pattern
For internal use only.
Definition: BOpcodeHandler.h:2853
Handles the TKE_Material opcode.
Definition: BOpcodeHandler.h:8162
short m_lock_color_cut_face_value
For internal use only.
Definition: BOpcodeHandler.h:2797
void GetUpVector(float *u) const
Definition: BOpcodeHandler.h:5518
void SetCutGeometryLevel(int m) alter
Definition: BOpcodeHandler.h:4131
""
Definition: BOpcodeHandler.h:7508
void SetOrientation(int count, float const *o) alter
Definition: BOpcodeHandler.h:4604
TK_Status
Codes which can be either passed to various toolkit functions, or indicate the result of a toolkit fu...
Definition: BStream.h:237
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4332
void SetUpVector(float const *u) alter
Definition: BOpcodeHandler.h:5514
int GetBytesCount() const
Definition: BOpcodeHandler.h:7206
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4905
mask for HSR field
Definition: BOpcodeHandler.h:2410
Handles the TKE_Window opcode.
Definition: BOpcodeHandler.h:5571
void SetPosition(float x, float y, float z) alter
Definition: BOpcodeHandler.h:7402
void SetMiddle(float x, float y, float z) alter
Definition: BOpcodeHandler.h:6550
BBaseOpcodeHandler * m_index_data
Definition: BOpcodeHandler.h:5221
TK_Point(unsigned char opcode)
Definition: BOpcodeHandler.h:5965
int m_length
Definition: BOpcodeHandler.h:7065
BBaseOpcodeHandler * m_unicode
Definition: BOpcodeHandler.h:5220
int m_forced_mask
For internal use only.
Definition: BOpcodeHandler.h:2802
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2357
unsigned char m_encoding
Definition: BOpcodeHandler.h:7068
void SetSimpleReflectionOpacity(float o) alter
Definition: BOpcodeHandler.h:4241
void SetOrtho(float const *s) alter
Definition: BOpcodeHandler.h:6718
self-explanatory
Definition: BOpcodeHandler.h:2693
TK_LOD()
Definition: BOpcodeHandler.h:1450
type for 'mask transform' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2491
int GetColorEdgeContrastLockValue() const
Definition: BOpcodeHandler.h:3377
""
Definition: BOpcodeHandler.h:7498
int m_forced_color_value
For internal use only.
Definition: BOpcodeHandler.h:2805
Handles the TKE_Visibility opcode.
Definition: BOpcodeHandler.h:4624
self-explanatory
Definition: BOpcodeHandler.h:2676
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2614
void SetColorTextContrastForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3856
void SetLodOptionsMask(int v) alter
Definition: BOpcodeHandler.h:3961
float GetIndex() const
Definition: BOpcodeHandler.h:1937
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2397
unsigned char m_hlr_weight_units
for internal use only.
Definition: BOpcodeHandler.h:2856
refer to HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:4820
TK_Named_Style_Def()
Definition: BOpcodeHandler.h:7889
////
Definition: BOpcodeHandler.h:790
unsigned char m_cut_geometry_match
For internal use only.
Definition: BOpcodeHandler.h:2930
type for NURBS curve options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2654
char * m_string
Definition: BOpcodeHandler.h:1219
void SetAxis(float const *a) alter
Definition: BOpcodeHandler.h:6767
short m_forced_color_edge_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:2826
TKO_Text_Encodings
Definition: BOpcodeHandler.h:6969
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2567
float const * GetRectangle() const
Definition: BOpcodeHandler.h:8016
""
Definition: BOpcodeHandler.h:7535
void SetColorFaceContrastForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3672
void SetNURBSSurfaceBudget(int b) alter
Definition: BOpcodeHandler.h:3951
int m_length
Definition: BOpcodeHandler.h:1217
select how to draw (or not) greeked text
Definition: BOpcodeHandler.h:5627
float m_contour_value_scale
for internal use only.
Definition: BOpcodeHandler.h:2862
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2629
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4909
void SetSize(int const *s) alter
Definition: BOpcodeHandler.h:7412
unsigned short value
for active settings, on or off
Definition: BOpcodeHandler.h:7047
TK_Color_RGB()
Definition: BOpcodeHandler.h:1954
unsigned char m_cut_geometry
For internal use only.
Definition: BOpcodeHandler.h:2928
char m_type
Definition: BOpcodeHandler.h:6906
self-explanatory
Definition: BOpcodeHandler.h:1735
s3 texture compression (level 1,3 or 5 determined by TKO_Image_Formats)
Definition: BOpcodeHandler.h:7279
""
Definition: BOpcodeHandler.h:7445
float const * GetRef2() const
Definition: BOpcodeHandler.h:6949
void SetIndices(int count) alter
Definition: BOpcodeHandler.h:5377
int m_current_value
for internal use only
Definition: BOpcodeHandler.h:5354
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1719
int m_ascii_progress
Tracks the amount of data that has been read/written so far by GetAscii functions.
Definition: BOpcodeHandler.h:76
self-explanatory
Definition: BOpcodeHandler.h:6978
""
Definition: BOpcodeHandler.h:7477
self-explanatory
Definition: BOpcodeHandler.h:2681
unsigned char m_degree
Definition: BOpcodeHandler.h:6103
void SetLodMinimumTriangleCount(int v) alter
Definition: BOpcodeHandler.h:3973
self-explanatory
Definition: BOpcodeHandler.h:2675
type for 'antialias' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2519
int GetDegree() const
Definition: BOpcodeHandler.h:6136
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2368
char alter * GetDiffuseName() alter
Definition: BOpcodeHandler.h:1850
void SetColorLineForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3591
void SetColorTextForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3637
int m_name_length
Definition: BOpcodeHandler.h:7942
Handles the TKE_NURBS_Surface opcode.
Definition: BOpcodeHandler.h:6257
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2328
int m_reference_length
Definition: BOpcodeHandler.h:7329
float const * GetUKnots() const
Definition: BOpcodeHandler.h:6305
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2366
int GetColorWindowForcedLockValue() const
Definition: BOpcodeHandler.h:3665
Definition: BOpcodeHandler.h:2156
char * m_data
Definition: BOpcodeHandler.h:8193
float * m_points
internal use
Definition: BOpcodeHandler.h:6333
void SetIndex(float val) alter
Definition: BOpcodeHandler.h:2147
int GetShadowMapResolution() const
Definition: BOpcodeHandler.h:4215
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4341
short m_forced_color_face_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:2818
type for 'antialias' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2517
int m_names_length
for internal use only
Definition: BOpcodeHandler.h:5696
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4362
ID_Key m_key
for internal use only
Definition: BOpcodeHandler.h:1312
void **const GetValues() alter
Definition: BOpcodeHandler.h:5392
int GetShadowMapSamples() const
Definition: BOpcodeHandler.h:4220
void SetColorWindowLockMask(int m) alter
Definition: BOpcodeHandler.h:3246
void SetFlags(int f) alter
Definition: BOpcodeHandler.h:959
struct vlist_s * m_data
Definition: BOpcodeHandler.h:8168
unsigned char m_geometry_options
For internal use only.
Definition: BOpcodeHandler.h:2960
type for 'simple shadow' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2454
Handles the TKE_Color_By_Index and TKE_Color_By_Index_16 opcode.
Definition: BOpcodeHandler.h:2060
only use Truetype (or similar) fonts
Definition: BOpcodeHandler.h:5660
refer to HC_Define_Texture
Definition: BOpcodeHandler.h:7440
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4388
int m_lock_visibility_value
For internal use only.
Definition: BOpcodeHandler.h:2801
float const * GetSimpleReflectionPlane() const
Definition: BOpcodeHandler.h:4238
float m_vector_tolerance
internal use; culling vector tolerance
Definition: BOpcodeHandler.h:4433
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special) alter
Definition: BOpcodeHandler.h:950
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4345
TK_Status PutData(BStreamFileToolkit &tk, short const *s, int n) alter
Definition: BOpcodeHandler.h:366
int m_join_cutoff_angle
For internal use only.
Definition: BOpcodeHandler.h:2969
replace with a box (probably a halftone stipple)
Definition: BOpcodeHandler.h:5681
int GetHlrLinePattern() const
Definition: BOpcodeHandler.h:3923
float GetStereoDistance() const
Definition: BOpcodeHandler.h:3898
int m_levels_allocated
the number of entries allocated in m_num_primitives and m_primitives
Definition: BOpcodeHandler.h:1441
unsigned char horizontal_offset_units
specified with enum TKO_Font_Size_Units
Definition: BOpcodeHandler.h:7051
void SetIndex(int i) alter
Definition: BOpcodeHandler.h:1423
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2359
int m_forced_value
For internal use only.
Definition: BOpcodeHandler.h:2803
int GetRenderer() const
Definition: BOpcodeHandler.h:5836
void GetField(float *f) const
Definition: BOpcodeHandler.h:5527
char alter * GetCallback() alter
Definition: BOpcodeHandler.h:2271
char m_contour_value_adjustment
for internal use only.
Definition: BOpcodeHandler.h:2861
void SetDiffuseTextureTintColor(float const *rgb) alter
Definition: BOpcodeHandler.h:4297
#define ID_Key
Definition: BStream.h:219
short m_lock_color_face_mask
For internal use only.
Definition: BOpcodeHandler.h:2764
unsigned short m_value
internal use
Definition: BOpcodeHandler.h:4580
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2562
int GetIndex() const
Definition: BOpcodeHandler.h:2100
type for NURBS curve options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2640
lighting interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2377
char alter * GetMirrorName() alter
Definition: BOpcodeHandler.h:1880
int GetColorVertexContrastLockValue() const
Definition: BOpcodeHandler.h:3446
void SetSize(int w, int h) alter
Definition: BOpcodeHandler.h:7805
void SetConcentration(float c) alter
Definition: BOpcodeHandler.h:6447
void SetNearLimit(float l) alter
Definition: BOpcodeHandler.h:5548
type for NURBS curve options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2634
unsigned char m_flags
Definition: BOpcodeHandler.h:6745
TK_Status GetData(BStreamFileToolkit &tk, float &f) alter
Definition: BOpcodeHandler.h:297
char * name
the font name
Definition: BOpcodeHandler.h:7036
self-explanatory
Definition: BOpcodeHandler.h:1739
all
Definition: BOpcodeHandler.h:2719
int GetColorFaceContrastForcedLockMask() const
Definition: BOpcodeHandler.h:3677
self-explanatory
Definition: BOpcodeHandler.h:2696
void SetFlags(int f) alter
Definition: BOpcodeHandler.h:7663
void SetImage(char const *image) alter
Definition: BOpcodeHandler.h:7645
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2381
void SetUpVector(float x, float y, float z) alter
Definition: BOpcodeHandler.h:5511
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, int variant)
Definition: BOpcodeHandler.h:1000
""
Definition: BOpcodeHandler.h:7449
self-explanatory
Definition: BOpcodeHandler.h:6975
type for HSR field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2408
void SetColorWindowContrastLockValue(int v) alter
Definition: BOpcodeHandler.h:3303
TK_Status PutData(BStreamFileToolkit &tk, unsigned char const &b) alter
Definition: BOpcodeHandler.h:443
refer to HC_Define_Texture
Definition: BOpcodeHandler.h:7458
Points.
Definition: BOpcodeHandler.h:4970
void SetCaps(int f) alter
Definition: BOpcodeHandler.h:6781
int GetMask() const
Definition: BOpcodeHandler.h:4601
force non-proportional spacing
Definition: BOpcodeHandler.h:5618
void SetColorFaceContrastLockValue(int v) alter
Definition: BOpcodeHandler.h:3280
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4903
Utility class for managing HSF header information.
Definition: BOpcodeHandler.h:907
void SetLockValue(int v) alter
Definition: BOpcodeHandler.h:3077
mask for all 'mask transform' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2493
static float read_float(char const *cp, char alter *alter *newcpp)
for internal use only
Definition: BOpcodeHandler.h:687
float const * GetUpVector() const
Definition: BOpcodeHandler.h:5516
options mask (unsigned char if file version is < 1805)
Definition: BOpcodeHandler.h:7263
self-explanatory
Definition: BOpcodeHandler.h:6377
unsigned short m_isoline_options
for internal use only.
Definition: BOpcodeHandler.h:2860
float GetVertexDecimation() const
Definition: BOpcodeHandler.h:4309
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2319
int m_index
internal use
Definition: BOpcodeHandler.h:1409
short m_forced_color_text_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:2835
int m_simple_reflection_visibility_value
For internal use only.
Definition: BOpcodeHandler.h:2952
short m_forced_color_cut_edge_mask
For internal use only.
Definition: BOpcodeHandler.h:2840
float m_concentration
for internal use only
Definition: BOpcodeHandler.h:6405
int GetNumCylinderTessellations() const
Definition: BOpcodeHandler.h:4086
int GetChannels() const
Definition: BOpcodeHandler.h:1835
common/shared items; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1644
void GetOblique(float *o) const
Definition: BOpcodeHandler.h:5540
void SetParameterFunction(int p) alter
Definition: BOpcodeHandler.h:7707
float const * GetDiffuse() const
Definition: BOpcodeHandler.h:1846
Object Space.
Definition: BOpcodeHandler.h:4967
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2573
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4366
int GetOptions() const
Definition: BOpcodeHandler.h:8079
void SetJoinCutoffAngle(int d) alter
Definition: BOpcodeHandler.h:3059
short m_forced_color_line_value
For internal use only.
Definition: BOpcodeHandler.h:2811
TKO_Attribute_Lock_Bits
Definition: BOpcodeHandler.h:2670
Handles the TKE_Thumbnail opcode.
Definition: BOpcodeHandler.h:7770
Handles the TKE_User_Options opcode.
Definition: BOpcodeHandler.h:5215
hard edge angle limit; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2660
TKO_Geometry_Bits
Definition: BOpcodeHandler.h:1638
HT_NURBS_Trim * m_current_trim
Definition: BOpcodeHandler.h:6268
int GetTransforms() const
Definition: BOpcodeHandler.h:5815
void SetPreferenceCutoff(float s) alter
Definition: BOpcodeHandler.h:5865
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2338
add an underline to the font
Definition: BOpcodeHandler.h:5615
void bytes_to_floats(unsigned char const *in, float alter *out, int count) const
for internal use only
Definition: BOpcodeHandler.h:627
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4902
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2352
int m_face_displacement
For internal use only.
Definition: BOpcodeHandler.h:2755
type for contour options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2558
bump map
Definition: BOpcodeHandler.h:1743
TK_Status WriteAscii(BStreamFileToolkit &tk) alter
Deprecated.
TK_Dictionary()
Definition: BOpcodeHandler.h:1577
unsigned char m_byte
temporary
Definition: BOpcodeHandler.h:78
int GetGeometry() const
Definition: BOpcodeHandler.h:4713
////
Definition: BOpcodeHandler.h:726
Handles the TKE_Clip_Region opcodes.
Definition: BOpcodeHandler.h:8043
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4363
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4923
unsigned char m_display_list_level
For internal use only.
Definition: BOpcodeHandler.h:2972
short m_forced_color_window_value
For internal use only.
Definition: BOpcodeHandler.h:2817
void SetColorLineForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3580
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4348
int GetVDegree() const
Definition: BOpcodeHandler.h:6291
int GetValue() const
Definition: BOpcodeHandler.h:4465
in addition to the spacing specified within the font itself, the extra space to add between character...
Definition: BOpcodeHandler.h:5612
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2585
#define NS_TRIM_END
terminates an NS_TRIM_COLLECTION if one is active, otherwise terminates the list of trims ...
Definition: BOpcodeHandler.h:6162
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2379
top of text is along region
Definition: BOpcodeHandler.h:6999
float const * GetMiddle() const
Definition: BOpcodeHandler.h:6583
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2374
""
Definition: BOpcodeHandler.h:4849
short m_lock_color_window_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:2779
stretched projection
Definition: BOpcodeHandler.h:5440
char * m_string
Definition: BOpcodeHandler.h:5119
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1661
use any available fonts
Definition: BOpcodeHandler.h:5658
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4380
int GetIndex() const
Definition: BOpcodeHandler.h:5077
int GetMoveUp() const
Definition: BOpcodeHandler.h:4757
virtual void Reset() alter
void SetAxis(float const *s, float const *e) alter
Definition: BOpcodeHandler.h:6765
int GetColorFaceContrastForcedLockValue() const
Definition: BOpcodeHandler.h:3688
TK_Streaming()
Definition: BOpcodeHandler.h:5094
char alter * GetConditions() alter
Definition: BOpcodeHandler.h:5142
type for HSR field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2400
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4368
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4365
refer to HC_Define_Shader
Definition: BOpcodeHandler.h:7462
void SetChannels(int c) alter
Definition: BOpcodeHandler.h:1829
short m_forced_color_marker_mask
For internal use only.
Definition: BOpcodeHandler.h:2812
int GetDecimation() const
Definition: BOpcodeHandler.h:7684
void SetDecimation(int p) alter
Definition: BOpcodeHandler.h:7682
Portable Network Graphics.
Definition: BOpcodeHandler.h:7281
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4377
s3 texture compression level 5
Definition: BOpcodeHandler.h:7252
char * m_debug_string
Definition: BOpcodeHandler.h:69
void SetEncoding(int e) alter
Definition: BOpcodeHandler.h:7119
char m_tiling
Definition: BOpcodeHandler.h:7593
short m_lock_color_marker_value
For internal use only.
Definition: BOpcodeHandler.h:2771
char const * GetSegment() const
Definition: BOpcodeHandler.h:1137
int GetGreekingLimitUnits() const
Definition: BOpcodeHandler.h:5825
Handles the TKE_Color_Map opcode.
Definition: BOpcodeHandler.h:2167
////
Definition: BOpcodeHandler.h:843
void SetQuantization(int q) alter
Definition: BOpcodeHandler.h:3034
char m_num_thresholds
For internal use only.
Definition: BOpcodeHandler.h:2885
int GetNURBSSurfaceTrimBudget() const
Definition: BOpcodeHandler.h:3957
float m_contour_value_translate
for internal use only.
Definition: BOpcodeHandler.h:2863
""
Definition: BOpcodeHandler.h:4882
void SetEndNormal(int index, float const *normal=0) alter
Definition: BOpcodeHandler.h:6875
int m_mask
internal use
Definition: BOpcodeHandler.h:2001
type for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2526
float const * GetLodCutoffs() const
Definition: BOpcodeHandler.h:4065
void SetMiddle(float const *m) alter
Definition: BOpcodeHandler.h:6554
self-explanatory
Definition: BOpcodeHandler.h:1734
void SetCenter(float const *c) alter
Definition: BOpcodeHandler.h:6571
TK_Named(unsigned char opcode)
Definition: BOpcodeHandler.h:5052
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2602
bool m_follow
for internal use only
Definition: BOpcodeHandler.h:1228
type for contour options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2551
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4328
char * m_name
Definition: BOpcodeHandler.h:7158
void SetOptions(int o) alter
Definition: BOpcodeHandler.h:5994
type for 'simple reflection' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2469
int * m_indices
for internal use only
Definition: BOpcodeHandler.h:5302
void SetHlrFaceDisplacement(float d) alter
Definition: BOpcodeHandler.h:3917
char const * GetString() const
Definition: BOpcodeHandler.h:7106
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2571
text spacing is afjusted to fit
Definition: BOpcodeHandler.h:7011
no fitting (direction only)
Definition: BOpcodeHandler.h:7010
void SetTransmissionName(char const *name) alter
Definition: BOpcodeHandler.h:1887
float m_width_scale
for internal use only
Definition: BOpcodeHandler.h:5702
void SetColorFaceLockMask(int m) alter
Definition: BOpcodeHandler.h:3131
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1660
int GetColorEdgeForcedLockValue() const
Definition: BOpcodeHandler.h:3573
self-explanatory
Definition: BOpcodeHandler.h:2673
TK_Status PutData(BStreamFileToolkit &tk, unsigned int const &i) alter
Definition: BOpcodeHandler.h:449
ID_Key m_key
for internal use only
Definition: BOpcodeHandler.h:7883
void SetSpace(int s) alter
Definition: BOpcodeHandler.h:2038
char * m_name
Definition: BOpcodeHandler.h:7323
bool m_follow
for internal use only
Definition: BOpcodeHandler.h:1314
char alter * GetComment() alter
Definition: BOpcodeHandler.h:1026
float GetSize() const
Definition: BOpcodeHandler.h:5765
int m_move_up
internal use; specifies what geometry is selectable on mouse move without buttons down...
Definition: BOpcodeHandler.h:4685
//– obsolete. this alias provided for source compatibility with old code
Definition: BOpcodeHandler.h:845
type for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2530
void SetColorLineContrastForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3798
TK_Matrix(unsigned char opcode)
Definition: BOpcodeHandler.h:4784
unsigned short m_simple_reflection
For internal use only.
Definition: BOpcodeHandler.h:2945
common/shared items; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1641
float GetRadius() const
Definition: BOpcodeHandler.h:6697
float const * GetTarget() const
Definition: BOpcodeHandler.h:6434
int GetNURBSCurveContinuedBudget() const
Definition: BOpcodeHandler.h:3949
type for 'simple shadow' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2447
use whatever the display device prefers
Definition: BOpcodeHandler.h:5669
type for sphere tesselation value; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2658
common/shared items; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1645
void SetCenter(float const *s) alter
Definition: BOpcodeHandler.h:6623
perspective bit setting
Definition: BOpcodeHandler.h:5434
int * m_num_primitives
an array of ints to indicate the length of each row in m_primitives
Definition: BOpcodeHandler.h:1438
bool m_flag
for internal use only
Definition: BOpcodeHandler.h:5090
unsigned char * m_data
Definition: BOpcodeHandler.h:8105
float GetSize() const
Definition: BOpcodeHandler.h:5008
void SetBufferSizeLimit(int l) alter
Definition: BOpcodeHandler.h:3886
void SetEnd(float x, float y, float z) alter
Definition: BOpcodeHandler.h:6558
int GetLength() alter
Definition: BOpcodeHandler.h:5289
not specified
Definition: BOpcodeHandler.h:5668
Base class for shell and mesh.
Definition: BPolyhedron.h:25
char const * GetName() const
Definition: BOpcodeHandler.h:7631
char m_options
Definition: BOpcodeHandler.h:8045
void ** m_values
for internal use only
Definition: BOpcodeHandler.h:5351
char * m_string
Definition: BOpcodeHandler.h:1102
int m_hlr_options
For internal use only.
Definition: BOpcodeHandler.h:2849
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1703
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4352
TKO_Bounding_Type_Options
Handles the TKE_Bounding and TKE_Bounding_Info opcodes.
Definition: BOpcodeHandler.h:5890
stretched bit setting
Definition: BOpcodeHandler.h:5435
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2587
refer to HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:4810
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2310
unsigned int NextOpcodeSequence() alter
Definition: BStreamFileToolkit.h:976
int GetHardExtent() const
Definition: BOpcodeHandler.h:4515
TK_Color_By_Index(unsigned char opcode)
Definition: BOpcodeHandler.h:2067
char * m_reference
Definition: BOpcodeHandler.h:7324
shift of extended section
Definition: BOpcodeHandler.h:2646
refer to HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:4812
void SetGeometry(int m) alter
Definition: BOpcodeHandler.h:2020
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4358
type for NURBS curve options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2641
char alter * GetString() alter
Definition: BOpcodeHandler.h:7108
int m_name_length
Definition: BOpcodeHandler.h:7161
Handles the TKE_Conditional_Action opcode.
Definition: BOpcodeHandler.h:5165
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1673
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4376
TK_Geometry_Options()
Definition: BOpcodeHandler.h:4587
""
Definition: BOpcodeHandler.h:7546
type for 'simple shadow' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2453
char alter * GetString() alter
Definition: BOpcodeHandler.h:8303
int GetUp() const
Definition: BOpcodeHandler.h:4735
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2615
""
Definition: BOpcodeHandler.h:4845
char * m_bytes
Definition: BOpcodeHandler.h:7160
void SetOrderedWeightsMask(int c) alter
Definition: BOpcodeHandler.h:4532
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1670
int m_vertex_displacement
For internal use only.
Definition: BOpcodeHandler.h:2756
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1671
float GetIndex() const
Definition: BOpcodeHandler.h:2149
image is one-byte of luminance data per pixel
Definition: BOpcodeHandler.h:7248
float alter * GetPoints() alter
Definition: BOpcodeHandler.h:6362
void SetSimpleShadowOpacity(float o) alter
Definition: BOpcodeHandler.h:4202
type for 'cut geometry' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2430
float m_surface_max_trim_curve_deviation
For internal use only.
Definition: BOpcodeHandler.h:2905
void SetIndex(int i) alter
Definition: BOpcodeHandler.h:5075
void SetPoints(float const *p) alter
Definition: BOpcodeHandler.h:6034
short m_forced_color_cut_edge_value
For internal use only.
Definition: BOpcodeHandler.h:2841
void SetSizeUnits(int u) alter
Definition: BOpcodeHandler.h:5768
void SetOblique(float h, float v) alter
Definition: BOpcodeHandler.h:5530
Handles the TKE_Start_User_Data opcode.
Definition: BOpcodeHandler.h:8102
float m_size
for internal use only
Definition: BOpcodeHandler.h:5698
int m_length
internal use
Definition: BOpcodeHandler.h:2169
type for 'antialias' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2520
type for NURBS curve options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2648
refer to HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:4832
void SetColorWindowContrastLockMask(int m) alter
Definition: BOpcodeHandler.h:3292
void SetSpecularName(char const *name) alter
Definition: BOpcodeHandler.h:1857
float const * GetPoints() const
Definition: BOpcodeHandler.h:6297
unsigned char m_format
internal use
Definition: BOpcodeHandler.h:2172
""
Definition: BOpcodeHandler.h:7478
void SetWindow(float const *w) alter
Definition: BOpcodeHandler.h:5591
virtual TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Definition: BOpcodeHandler.h:199
short m_lock_color_edge_value
For internal use only.
Definition: BOpcodeHandler.h:2767
int GetVSize() const
Definition: BOpcodeHandler.h:6295
char * m_lookup
Definition: BOpcodeHandler.h:7159
char const * GetLookup() const
Definition: BOpcodeHandler.h:7226
TK_Window()
Definition: BOpcodeHandler.h:5577
void SetColorTextContrastLockValue(int v) alter
Definition: BOpcodeHandler.h:3464
TKO_Texture_Param_Functions
Definition: BOpcodeHandler.h:7494
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2588
int GetColorLineForcedLockValue() const
Definition: BOpcodeHandler.h:3596
type for 'technology' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2504
TK_Linear_Pattern(unsigned char opcode)
Definition: BOpcodeHandler.h:5023
void SetPoints(float x1, float y1, float z1, float x2, float y2, float z2) alter
Definition: BOpcodeHandler.h:6025
int m_radius_count
Definition: BOpcodeHandler.h:6812
float GetTolerance() const
Definition: BOpcodeHandler.h:5775
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2363
TK_Status PutData(BStreamFileToolkit &tk, unsigned char const *b, int n) alter
Definition: BOpcodeHandler.h:425
int m_forced_visibility_value
For internal use only.
Definition: BOpcodeHandler.h:2843
discard after load to graphics hardware as texture
Definition: BOpcodeHandler.h:7262
TK_Line_Style()
Definition: BOpcodeHandler.h:7949
void SetVisibilityForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3499
Definition: BOpcodeHandler.h:5088
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2575
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2373
void SetSize(int w, int h) alter
Definition: BOpcodeHandler.h:7410
""
Definition: BOpcodeHandler.h:4885
char m_num_ratios
For internal use only.
Definition: BOpcodeHandler.h:2883
void SetOptions(int f) alter
Definition: BOpcodeHandler.h:7422
self-explanatory
Definition: BOpcodeHandler.h:2691
short m_forced_color_text_value
For internal use only.
Definition: BOpcodeHandler.h:2815
float GetHardEdgeAngle() const
Definition: BOpcodeHandler.h:4117
void SetHlrDimFactor(float d) alter
Definition: BOpcodeHandler.h:3913
int GetParameterFunction() const
Definition: BOpcodeHandler.h:7709
unsigned char m_extras
internal use; low bit set == left handed, second bit set == spriting
Definition: BOpcodeHandler.h:4424
float const * GetMinor() const
Definition: BOpcodeHandler.h:6643
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4360
Handles the TKE_Start_Compression and TKE_Stop_Compression opcodes.
Definition: BOpcodeHandler.h:1068
unsigned short * m_string
Definition: BOpcodeHandler.h:5264
char const * GetName() const
Definition: BOpcodeHandler.h:7388
the size at which to draw characters
Definition: BOpcodeHandler.h:5603
self-explanatory
Definition: BOpcodeHandler.h:2687
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2362
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special) alter
Definition: BOpcodeHandler.h:1004
TK_Texture()
Definition: BOpcodeHandler.h:7609
char * m_gooch_color_map_segment
For internal use only.
Definition: BOpcodeHandler.h:2924
rotation, specified in degrees clockwise
Definition: BOpcodeHandler.h:7027
TK_Status PutData(BStreamFileToolkit &tk, unsigned int const *i, int n) alter
Definition: BOpcodeHandler.h:431
void SetLodBounding(float const *s, float const *e) alter
Definition: BOpcodeHandler.h:4003
int m_allocated
Definition: BOpcodeHandler.h:8278
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2394
int GetLodThresholdType() const
Definition: BOpcodeHandler.h:4032
float alter * GetKnots() alter
Definition: BOpcodeHandler.h:6243
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4906
int GetPreference() const
Definition: BOpcodeHandler.h:5857
float m_gooch_diffuse_weight
For internal use only.
Definition: BOpcodeHandler.h:2923
""
Definition: BOpcodeHandler.h:7487
the font name
Definition: BOpcodeHandler.h:7020
void SetTransparentStyle(int s) alter
Definition: BOpcodeHandler.h:3024
self-explanatory
Definition: BOpcodeHandler.h:2711
int GetLodNumThresholds() const
Definition: BOpcodeHandler.h:4045
void SetDown(int m) alter
Definition: BOpcodeHandler.h:4719
int GetFormat() const
Definition: BOpcodeHandler.h:2195
void SetLodThreshold(float r) alter
Definition: BOpcodeHandler.h:4034
float const * GetLodRatios() const
Definition: BOpcodeHandler.h:4025
void SetLineSpacing(float s) alter
Definition: BOpcodeHandler.h:5808
int GetColorTextContrastLockValue() const
Definition: BOpcodeHandler.h:3469
int GetColorMarkerContrastForcedLockValue() const
Definition: BOpcodeHandler.h:3826
float const * getSimpleShadowLight() const
Definition: BOpcodeHandler.h:4179
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1657
refer to HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:4839
float GetStereoSeparation() const
Definition: BOpcodeHandler.h:3894
char const * GetEnvironmentName() const
Definition: BOpcodeHandler.h:1917
int m_lock_mask
For internal use only.
Definition: BOpcodeHandler.h:2760
void SetMatrix(float const *m) alter
Definition: BOpcodeHandler.h:4795
only used by certain handlers
Definition: BOpcodeHandler.h:4972
void SetHlrLinePattern(int p) alter
Definition: BOpcodeHandler.h:3921
char const * GetSpecularName() const
Definition: BOpcodeHandler.h:1863
//// reserved for future expansion
Definition: BOpcodeHandler.h:853
//– would like this to be obsolete, but...
Definition: BOpcodeHandler.h:846
float alter * GetKnots() alter
Definition: BOpcodeHandler.h:6143
int m_substage
Definition: BOpcodeHandler.h:7076
float const * GetPoint() const
Definition: BOpcodeHandler.h:5991
int GetFormat() const
Definition: BOpcodeHandler.h:7814
int m_options
internal use
Definition: BOpcodeHandler.h:1385
type for transparency field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2417
void SetGeometry(int m) alter
Definition: BOpcodeHandler.h:4644
void SetCounts(int c1, int c2) alter
Definition: BOpcodeHandler.h:6952
TK_Status PutData(BStreamFileToolkit &tk, char const &c) alter
Definition: BOpcodeHandler.h:434
self-explanatory
Definition: BOpcodeHandler.h:7246
""
Definition: BOpcodeHandler.h:7549
float const * GetEnd() const
Definition: BOpcodeHandler.h:6585
void SetPosition(float x, float y, float z) alter
Definition: BOpcodeHandler.h:6421
self-explanatory
Definition: BOpcodeHandler.h:2677
bool Find_Instance(BStreamFileToolkit &tk, int val1, int val2, int val3) alter
Definition: BOpcodeHandler.h:670
void set_points(int count, float const *points=0) alter
Definition: BOpcodeHandler.h:6056
void SetNURBSCurveContinuedBudget(int b) alter
Definition: BOpcodeHandler.h:3947
type for contour options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2549
float const * GetFogLimits() const
Definition: BOpcodeHandler.h:3068
#define TKO_Rendo_Extended
Definition: BOpcodeHandler.h:2344
int GetCount() const
Definition: BOpcodeHandler.h:5329
void SetSphereTessellation(int n) alter
Definition: BOpcodeHandler.h:4092
void SetColorMarkerForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3603
type for 'mask transform' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2490
refer to HC_Define_Texture
Definition: BOpcodeHandler.h:7529
int m_lock_value
For internal use only.
Definition: BOpcodeHandler.h:2761
int m_lod_options_mask
For internal use only.
Definition: BOpcodeHandler.h:2880
int GetTiling() const
Definition: BOpcodeHandler.h:7719
self-explanatory
Definition: BOpcodeHandler.h:6974
TKO_Text_Region_Fit_Options
Definition: BOpcodeHandler.h:7009
float * m_isoline_colors
for internal use only.
Definition: BOpcodeHandler.h:2868
add a strikethrough to the font
Definition: BOpcodeHandler.h:5616
TK_URL()
Definition: BOpcodeHandler.h:8244
int GetProjection() const
Definition: BOpcodeHandler.h:5545
int m_allocated
Definition: BOpcodeHandler.h:8239
float const * GetTextRegionPoints() const
Definition: BOpcodeHandler.h:7128
texture interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2286
lighting interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2307
Handles the TKE_Delete_Object opcode.
Definition: BOpcodeHandler.h:1407
void SetColorEdgeForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3568
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1726
refer to HC_Define_Texture
Definition: BOpcodeHandler.h:7544
TK_Default()
Definition: BOpcodeHandler.h:873
TK_Status GetData(BStreamFileToolkit &tk, int &i) alter
Definition: BOpcodeHandler.h:285
self-explanatory
Definition: BOpcodeHandler.h:5891
oblique x setting
Definition: BOpcodeHandler.h:5443
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2584
char alter * GetCamera() alter
Definition: BOpcodeHandler.h:7660
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4331
type for transparency field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2419
void SetSimpleShadowColor(float const *rgb) alter
Definition: BOpcodeHandler.h:4197
void SetField(float w, float h) alter
Definition: BOpcodeHandler.h:5521
color index interpolation value; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2297
short m_forced_color_vertex_mask
For internal use only.
Definition: BOpcodeHandler.h:2824
type for 'cut geometry' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2437
relative sizing
Definition: BOpcodeHandler.h:6996
type for NURBS curve options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2655
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2317
HLONG GetValue() const
Definition: BOpcodeHandler.h:5427
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2353
unsigned char m_heuristic
For internal use only.
Definition: BOpcodeHandler.h:2896
void SetMoveDown(int m) alter
Definition: BOpcodeHandler.h:4741
ID_Key m_key
for internal use only
Definition: BOpcodeHandler.h:1224
void SetValue(HLONG v) alter
Definition: BOpcodeHandler.h:5425
int m_count
for internal use only
Definition: BOpcodeHandler.h:5349
void SetStreaming(bool s) alter
Definition: BOpcodeHandler.h:5103
Handles the TKE_Spot_Light opcode.
Definition: BOpcodeHandler.h:6399
TK_Camera(unsigned char opcode=TKE_Camera)
Definition: BOpcodeHandler.h:5474
void SetStereoSeparation(float s) alter
Definition: BOpcodeHandler.h:3892
void SetOrigin(float x, float y, float z) alter
Definition: BOpcodeHandler.h:6925
int GetType() const
Definition: BOpcodeHandler.h:6225
void SetParameterOffset(int p) alter
Definition: BOpcodeHandler.h:7732
float const * GetPosition() const
Definition: BOpcodeHandler.h:7407
float const * GetOrigin() const
Definition: BOpcodeHandler.h:6931
int m_length
Definition: BOpcodeHandler.h:1100
void Record_Instance(BStreamFileToolkit &tk, ID_Key key, int variant, int val1, int val2, int val3) const
Definition: BOpcodeHandler.h:665
draw only the outline (i.e. don't fill)
Definition: BOpcodeHandler.h:5614
void SetColorLineLockMask(int m) alter
Definition: BOpcodeHandler.h:3177
internal use, indicates bits which require TKO_Geo_Extended
Definition: BOpcodeHandler.h:1649
int GetBufferSizeLimit() const
Definition: BOpcodeHandler.h:3888
char alter * GetName() alter
Definition: BOpcodeHandler.h:7970
char const * GetBytes() const
Definition: BOpcodeHandler.h:7208
TK_Status PutData(BStreamFileToolkit &tk, char const *b, int n) alter
Definition: BOpcodeHandler.h:363
char * m_string
Definition: BOpcodeHandler.h:7067
env map
Definition: BOpcodeHandler.h:2717
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4391
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2315
s3 texture compression level 1
Definition: BOpcodeHandler.h:7250
TK_Text_Font()
Definition: BOpcodeHandler.h:5724
int GetGeometry() const
Definition: BOpcodeHandler.h:1827
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4374
int m_length
Definition: BOpcodeHandler.h:5263
float * m_values
internal use
Definition: BOpcodeHandler.h:2170
int GetColorEdgeContrastLockMask() const
Definition: BOpcodeHandler.h:3366
float const * GetAxis() const
Definition: BOpcodeHandler.h:6708
void SetSlant(float s) alter
Definition: BOpcodeHandler.h:5788
int m_move_down
internal use; specifies what geometry is selectable on mouse button down and move. For internal use only.
Definition: BOpcodeHandler.h:4684
float alter * GetOrderedWeights() alter
Definition: BOpcodeHandler.h:4546
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1717
type for 'technology' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2502
refer to HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:4826
int m_cond_length
Definition: BOpcodeHandler.h:1307
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2313
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1682
int GetColorWindowContrastLockValue() const
Definition: BOpcodeHandler.h:3308
extends font options to a second byte
Definition: BOpcodeHandler.h:5609
int GetColorTextForcedLockValue() const
Definition: BOpcodeHandler.h:3642
try to use polyline outline around the character exterior
Definition: BOpcodeHandler.h:5672
lighting interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2305
float m_simple_reflection_hither
For internal use only.
Definition: BOpcodeHandler.h:2949
void SetHSR(int h) alter
Definition: BOpcodeHandler.h:3014
int GetNURBSOptionsMask() const
Definition: BOpcodeHandler.h:3937
void SetValue(int m) alter
Definition: BOpcodeHandler.h:4662
virtual TK_Status Write(BStreamFileToolkit &tk) alter=0
short m_forced_color_window_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:2821
void SetPosition(float const *p) alter
Definition: BOpcodeHandler.h:5494
mask for HSR field
Definition: BOpcodeHandler.h:2411
internal use, indicates shift for placement of extended section
Definition: BOpcodeHandler.h:1666
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4910
""
Definition: BOpcodeHandler.h:4888
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2621
ID_Key remove_segment(BStreamFileToolkit &tk) alter
for internal use only
Definition: BOpcodeHandler.h:636
refer to ::HC_Conditional_Action
Definition: BOpcodeHandler.h:5152
int m_value
internal use
Definition: BOpcodeHandler.h:4418
type for 'buffer options' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2512
Handles the TKE_Line opcode.
Definition: BOpcodeHandler.h:6007
float m_slant
for internal use only
Definition: BOpcodeHandler.h:5701
float const * GetAxis() const
Definition: BOpcodeHandler.h:6769
int GetColorEdgeContrastForcedLockValue() const
Definition: BOpcodeHandler.h:3780
void SetColorMarkerContrastLockValue(int v) alter
Definition: BOpcodeHandler.h:3418
void SetColorVertexContrastLockMask(int m) alter
Definition: BOpcodeHandler.h:3430
HT_NURBS_Trim * m_current_trim
Definition: BOpcodeHandler.h:6196
TKO_Compression
Definition: BOpcodeHandler.h:7275
int GetCulling() const
Definition: BOpcodeHandler.h:4495
float GetHlrFaceSortingAlgorithm() const
Definition: BOpcodeHandler.h:3927
void SetLockMask(int m) alter
Definition: BOpcodeHandler.h:3072
////
Definition: BOpcodeHandler.h:728
refer to HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:4924
""
Definition: BOpcodeHandler.h:4879
refer to HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:4828
int GetExtraSpaceUnits() const
Definition: BOpcodeHandler.h:5805
float const * GetOrtho() const
Definition: BOpcodeHandler.h:6720
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1715
void SetPreference(int r) alter
Definition: BOpcodeHandler.h:5855
type for 'mask transform' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2485
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2375
int GetLayout() const
Definition: BOpcodeHandler.h:7714
float const * GetCenter() const
Definition: BOpcodeHandler.h:6625
""
Definition: BOpcodeHandler.h:7521
char * m_string
Definition: BOpcodeHandler.h:5170
int m_substage
Definition: BOpcodeHandler.h:7582
void SetRedMapping(int p) alter
Definition: BOpcodeHandler.h:7687
int m_substage
internal use; To track the subcases
Definition: BOpcodeHandler.h:1785
void SetColorVertexContrastLockValue(int v) alter
Definition: BOpcodeHandler.h:3441
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4318
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4321
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1656
TK_Visibility(void)
Definition: BOpcodeHandler.h:4631
int GetColorMarkerForcedLockValue() const
Definition: BOpcodeHandler.h:3619
int m_control_point_count
Definition: BOpcodeHandler.h:6104
char m_index
internal use
Definition: BOpcodeHandler.h:4944
refer to HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:4827
float GetStart() const
Definition: BOpcodeHandler.h:6146
int m_related
internal use
Definition: BOpcodeHandler.h:4420
int * m_indices
for internal use only
Definition: BOpcodeHandler.h:5350
int GetOptions() const
Definition: BOpcodeHandler.h:6454
type for HSR field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2406
float const * GetLodBounding() const
Definition: BOpcodeHandler.h:4009
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2392
""
Definition: BOpcodeHandler.h:4876
int GetLockMask() const
Definition: BOpcodeHandler.h:3074
""
Definition: BOpcodeHandler.h:4887
char * m_camera
Definition: BOpcodeHandler.h:7576
float const * GetRadii() const
Definition: BOpcodeHandler.h:6862
TKO_Spot_Light_Options
Definition: BOpcodeHandler.h:6376
int m_image_length
Definition: BOpcodeHandler.h:7579
self-explanatory
Definition: BOpcodeHandler.h:7257
int GetIndex() const
Definition: BOpcodeHandler.h:4960
bool GetFollow() alter
Definition: BOpcodeHandler.h:1358
TK_Selectability(void)
Definition: BOpcodeHandler.h:4690
TKO_Font_Type
Handles the TKE_Font opcodes.
Definition: BOpcodeHandler.h:7144
extended bit
Definition: BOpcodeHandler.h:7455
float const * GetScreenRange() const
Definition: BOpcodeHandler.h:4265
char const * GetString() const
Definition: BOpcodeHandler.h:2222
type for transparency field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2422
int m_length
Definition: BOpcodeHandler.h:8238
float const * GetLodThresholds() const
Definition: BOpcodeHandler.h:4047
unsigned char m_format
internal use
Definition: BOpcodeHandler.h:1568
float alter * GetPoints() alter
Definition: BOpcodeHandler.h:8072
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2625
unsigned short m_shadow_map_resolution
For internal use only.
Definition: BOpcodeHandler.h:2942
float m_hlr_face_displacement
For internal use only.
Definition: BOpcodeHandler.h:2851
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1685
short m_lock_color_line_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:2787
int m_tmp
Definition: BOpcodeHandler.h:7077
short m_forced_color_back_value
For internal use only.
Definition: BOpcodeHandler.h:2823
Handles the TKE_Ellipse and TKE_Elliptical_Arc opcodes.
Definition: BOpcodeHandler.h:6599
float const * GetCenter() const
Definition: BOpcodeHandler.h:6587
void SetField(float const *f) alter
Definition: BOpcodeHandler.h:5523
int GetBufferOptionsValue() const
Definition: BOpcodeHandler.h:3884
""
Definition: BOpcodeHandler.h:7547
World Space.
Definition: BOpcodeHandler.h:4973
extended bit for HLR suboptions; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2541
float horizontal_offset
offset, positive or negative, from the standard position. units are specified separately in horizonta...
Definition: BOpcodeHandler.h:7041
type for NURBS curve options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2649
self-explanatory
Definition: BOpcodeHandler.h:2694
int GetSize() const
Definition: BOpcodeHandler.h:8137
self-explanatory
Definition: BOpcodeHandler.h:6385
type for 'antialias' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2522
char * m_name
The name of the color channel.
Definition: BOpcodeHandler.h:1769
refer to HC_Define_Texture
Definition: BOpcodeHandler.h:7517
Definition: BOpcodeHandler.h:7035
void SetLodOptionsValue(int v) alter
Definition: BOpcodeHandler.h:3965
""
Definition: BOpcodeHandler.h:4883
Truevision TGA.
Definition: BOpcodeHandler.h:7253
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2627
void SetDiffuseName(int length) alter
Definition: BOpcodeHandler.h:1844
void SetNURBSSurfaceTrimBudget(int b) alter
Definition: BOpcodeHandler.h:3955
void SetOptions(int o) alter
Definition: BOpcodeHandler.h:6150
TK_Status SetPoints(int count, float const *points=0) alter
int flip(int i)
for internal use only
Definition: BOpcodeHandler.h:542
int m_cond_allocated
Definition: BOpcodeHandler.h:1221
vetical fitting is specified
Definition: BOpcodeHandler.h:7001
self-explanatory
Definition: BOpcodeHandler.h:7760
void SetFormat(int f) alter
Definition: BOpcodeHandler.h:7812
Handles the TKE_Grid opcode.
Definition: BOpcodeHandler.h:6904
void SetColorWindowContrastForcedLockMask(int m) alter
Definition: BOpcodeHandler.h:3695
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2618
TKO_Clip_Region_Options
Definition: BOpcodeHandler.h:8029
void SetPosition(float const *p) alter
Definition: BOpcodeHandler.h:7405
type for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2528
lighting interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2300
color interpolation value; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2293
""
Definition: BOpcodeHandler.h:7450
int m_size
internal use
Definition: BOpcodeHandler.h:1603
int GetColorLineForcedLockMask() const
Definition: BOpcodeHandler.h:3585
BBaseOpcodeHandler * m_referee
for internal use only
Definition: BOpcodeHandler.h:1313
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2371
int m_from_index
internal use
Definition: BOpcodeHandler.h:1381
""
Definition: BOpcodeHandler.h:7453
short m_lock_color_back_mask
For internal use only.
Definition: BOpcodeHandler.h:2780
void SetCaps(int f) alter
Definition: BOpcodeHandler.h:6870
float m_hlr_dim_factor
For internal use only.
Definition: BOpcodeHandler.h:2850
type for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2535
bool m_follow
for internal use only
Definition: BOpcodeHandler.h:7885
float const * GetSimpleShadowPlane() const
Definition: BOpcodeHandler.h:4191
char alter * GetBumpName() alter
Definition: BOpcodeHandler.h:1928
void SetLimits(float s, float e) alter
Definition: BOpcodeHandler.h:6646
int m_curve_continued_budget
For internal use only.
Definition: BOpcodeHandler.h:2902
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2391
self-explanatory
Definition: BOpcodeHandler.h:2686
mask for HLR suboptions; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2539
short m_forced_color_vertex_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:2832
int m_length
Definition: BOpcodeHandler.h:5169
char * m_segment
Definition: BOpcodeHandler.h:7881
common/shared items; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1642
float GetRadius() const
Definition: BOpcodeHandler.h:6778
void SetValue(float a, float b, float c) alter
Definition: BOpcodeHandler.h:2043
float const * GetPlanes() const
Definition: BOpcodeHandler.h:6497
unsigned char m_depth_peeling_layers
For internal use only.
Definition: BOpcodeHandler.h:2965
float alter * GetWeights() alter
Definition: BOpcodeHandler.h:6303
wchar_t alter * GetString() alter
Definition: BOpcodeHandler.h:8342
self-explanatory
Definition: BOpcodeHandler.h:6384
self-explanatory
Definition: BOpcodeHandler.h:6389
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2628
int GetColorLockValue() const
Definition: BOpcodeHandler.h:3124
type for 'technology' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2500
int GetGeometry() const
Definition: BOpcodeHandler.h:2035
""
Definition: BOpcodeHandler.h:7536
type for isoline options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2579
internal use, indicates bits which require TKO_Geo_Extended_Colors
Definition: BOpcodeHandler.h:1664
extra item for color; refer to HC_Set_Color for a description
Definition: BOpcodeHandler.h:1669
int m_isoline_position_count
for internal use only.
Definition: BOpcodeHandler.h:2865
void SetEmissionName(int length) alter
Definition: BOpcodeHandler.h:1904
void SetSimpleReflectionPlane(float const *p) alter
Definition: BOpcodeHandler.h:4236
Flags
Definition: BOpcodeHandler.h:6725
refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2339
int GetTessellationMask() const
Definition: BOpcodeHandler.h:4073
void SetOrigin(float const *o) alter
Definition: BOpcodeHandler.h:6929
int m_cond_length
Definition: BOpcodeHandler.h:1220
float m_curve_max_length
For internal use only.
Definition: BOpcodeHandler.h:2911
int m_isoline_pattern_count
for internal use only.
Definition: BOpcodeHandler.h:2869
void SetColorFaceForcedLockValue(int v) alter
Definition: BOpcodeHandler.h:3545
//// last opcode value reserved for private use
Definition: BOpcodeHandler.h:849
void SetOrderedWeight(int index, float weight) alter
Definition: BOpcodeHandler.h:4537
void SetScreenRange(float const *l) alter
Definition: BOpcodeHandler.h:4263
int m_substage
tracks progress of reading individual opcode handler arrays.
Definition: BOpcodeHandler.h:1442
int GetLodMaxDegree() const
Definition: BOpcodeHandler.h:3987
int m_culling
internal use; culling options
Definition: BOpcodeHandler.h:4425
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4344
""
Definition: BOpcodeHandler.h:7451
float * m_knots
Definition: BOpcodeHandler.h:6108
char m_options
internal use
Definition: BOpcodeHandler.h:6334
void SetMaximumExtentLevel(int c) alter
Definition: BOpcodeHandler.h:4511
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4370
the offset from the standard position
Definition: BOpcodeHandler.h:7029
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2596
Handles the TKE_User_Value opcode.
Definition: BOpcodeHandler.h:5408
hard edge angle limit; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2663
void SetShadowMapSamples(int m) alter
Definition: BOpcodeHandler.h:4218
int GetPixelThreshold() const
Definition: BOpcodeHandler.h:4499
void SetImageTintColor(float r, float g, float b) alter
Definition: BOpcodeHandler.h:4286
short m_lock_color_simple_reflection_value
For internal use only.
Definition: BOpcodeHandler.h:2795
void SetRelatedSelectionLimit(int r) alter
Definition: BOpcodeHandler.h:4468
char * m_string
Definition: BOpcodeHandler.h:5218
Handles the TKE_Color_By_FIndex opcode.
Definition: BOpcodeHandler.h:2109
int m_mask
internal use
Definition: BOpcodeHandler.h:4417
short m_lock_color_face_value
For internal use only.
Definition: BOpcodeHandler.h:2765
unsigned char m_cut_geometry_level
For internal use only.
Definition: BOpcodeHandler.h:2929
void SetUp(int m) alter
Definition: BOpcodeHandler.h:4730
TKO_Font_Renderers
Definition: BOpcodeHandler.h:5656
char * m_data
Definition: BOpcodeHandler.h:7831
int GetColorMarkerLockValue() const
Definition: BOpcodeHandler.h:3216
type for 'cut geometry' field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2431
short m_forced_color_simple_reflection_mask
For internal use only.
Definition: BOpcodeHandler.h:2836
""
Definition: BOpcodeHandler.h:4857
Portable Network Graphics.
Definition: BOpcodeHandler.h:7254
type for 'simple reflection' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2479
float m_tolerance
for internal use only
Definition: BOpcodeHandler.h:5699
int GetOptions() const
Definition: BOpcodeHandler.h:6369
""
Definition: BOpcodeHandler.h:7533
int m_isoline_color_count
for internal use only.
Definition: BOpcodeHandler.h:2867
TKE_Object_Types
Opcodes stored in the file.
Definition: BOpcodeHandler.h:724
void SetTransparentHSR(int t) alter
Definition: BOpcodeHandler.h:3019
Capping_Options
Definition: BOpcodeHandler.h:6788
type for contour options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2550
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4385
char const * GetShaderSource() const
Definition: BOpcodeHandler.h:7640
void SetSphereTessellations(int c, char const *n=0) alter
Definition: BOpcodeHandler.h:4094
short m_lock_color_vertex_mask
For internal use only.
Definition: BOpcodeHandler.h:2782
type for LOD options; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2619
self-explanatory
Definition: BOpcodeHandler.h:7758
type for 'buffer options' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2513
color index interpolation value; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2295
void SetCallback(int length) alter
Definition: BOpcodeHandler.h:2267
bool m_jpeg_native
Definition: BOpcodeHandler.h:7339
void SetColorBackLockMask(int m) alter
Definition: BOpcodeHandler.h:3315
self-explanatory
Definition: BOpcodeHandler.h:6987
type for 'simple reflection' field; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2471
refer to HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:4818
type for HSR field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2403
void SetHardEdgeAngle(int m) alter
Definition: BOpcodeHandler.h:4115
short m_lock_color_line_mask
For internal use only.
Definition: BOpcodeHandler.h:2768
void SetImage(int length) alter
Definition: BOpcodeHandler.h:7647
int GetColorEdgeContrastForcedLockMask() const
Definition: BOpcodeHandler.h:3769
int m_invisible
internal use; specifies what geometry is selectable even when invisible. For internal use only...
Definition: BOpcodeHandler.h:4686
type for HSR field; refer to HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2405
void SetOffset(int offset) alter
Definition: BOpcodeHandler.h:1627
TKO_Font_Preferences
Definition: BOpcodeHandler.h:5667
int GetColorFaceContrastLockValue() const
Definition: BOpcodeHandler.h:3285
void SetImageTintColor(float const *rgb) alter
Definition: BOpcodeHandler.h:4289
extra item for visibility; refer to HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1699
refer to HC_Set_Heuristics
Definition: BOpcodeHandler.h:4319