BOpcodeHandler.h
Go to the documentation of this file.
1 // Copyright (c) Tech Soft 3D
2 //
3 // The information contained herein is confidential and proprietary to Tech Soft 3D, Inc.,
4 // and considered a trade secret as defined under civil and criminal statutes.
5 // Tech Soft 3D, Inc. shall pursue its civil and criminal remedies in the event of
6 // unauthorized use or misappropriation of its trade secrets. Use of this information
7 // by anyone other than authorized employees of Tech Soft 3D, Inc. is granted only under
8 // a written non-disclosure agreement, expressly prescribing the scope and manner of such use.
9 
10 #ifndef BOPCODE_HANDLER
11 #define BOPCODE_HANDLER
12 
13 #ifndef BBINFILETK_TOOLKIT
14  #include "BStreamFileToolkit.h"
15 #endif
16 
17 #ifndef POINTER_SIZED_INT
18 #if defined(WIN64) || defined(_M_X64) || defined(_WIN64)
19 # define POINTER_SIZED_INT __int64
20 # define POINTER_SIZED_UINT unsigned __int64
21 #else
22 # define POINTER_SIZED_INT long
23 # define POINTER_SIZED_UINT unsigned long
24 #endif
25 #endif
26 
27 
29 
32 
53 class BBINFILETK_API2 BBaseOpcodeHandler
54 #ifdef HPS_CORE_BUILD
55  : public CMO
56 #else
58 #endif
59 {
60  protected:
61  int m_stage;
62  int m_progress;
63  unsigned char m_opcode;
64  unsigned char m_general_flags;
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_general_flags(0), 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) = 0;
106 
114  virtual TK_Status Write (BStreamFileToolkit & tk) = 0;
115 
123  virtual TK_Status Execute (BStreamFileToolkit & tk);
124 
134  virtual TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant = 0);
135 
145  virtual TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special);
146 
152  virtual void Reset ();
153 
158  virtual bool Match_Instance (BStreamFileToolkit const & tk, Recorded_Instance * instance);
159 
160 
162  unsigned char Opcode () const { return m_opcode; }
163 
165  unsigned char General_Flags () const { return m_general_flags; }
166 
168  void Set_General_Flags (int f) { m_general_flags = (unsigned char)f; }
169 
174  int Pass (BStreamFileToolkit & tk) const { return tk.pass(); }
175 
180  TK_Status Tag (BStreamFileToolkit & tk, int variant= -1) const { return tk.tag(variant); }
181 
185  bool Tagging (BStreamFileToolkit & tk) const {
186  return m_needs_tag || tk.GetWriteFlags(TK_Force_Tags) != 0;
187  }
188 
192  void SetNeedsTag (bool n) { m_needs_tag = n; }
193 
197  bool NeedsTag () const { return m_needs_tag; }
198 
205  virtual TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const {
206  *handler = 0;
207  return tk.Error();
208  }
209 
215  virtual bool NeedsContext (BStreamFileToolkit & tk) const { (void)tk; return false; }
216 
221  void SetLoggingString (char const * segment);
222 
227  void SetLoggingString (int length);
228 
232  char const * GetLoggingString () const { return m_debug_string; }
237  char * GetLoggingString () { return m_debug_string; }
238 
242  void LogDebug (BStreamFileToolkit & tk, char const * string = 0);
243 
244  protected:
245  // various means of pulling data from the toolkit buffer
246  // Note: format conversion is safe to do in output buffer
247 
249  static TK_Status GetData (BStreamFileToolkit & tk, char * b, int n) { return tk.read (b, n); }
250 
252  static TK_Status GetData (BStreamFileToolkit & tk, short * s, int n) {
253  TK_Status status;
254  if ((status = GetData (tk, (char *)s, n * (int)sizeof (short))) == TK_Normal)
255  fix (s, n);
256  return status;
257  }
258 
260  static TK_Status GetData (BStreamFileToolkit & tk, int * i, int n) {
261  TK_Status status;
262  if ((status = GetData (tk, (char *)i, n * (int)sizeof (int))) == TK_Normal)
263  fix (i, n);
264  return status;
265  }
266 
268  static TK_Status GetData (BStreamFileToolkit & tk, float * f, int n) {
269  TK_Status status;
270  if ((status = GetData (tk, (char *)f, n * (int)sizeof (float))) == TK_Normal)
271  fix_in (f, n);
272  return status;
273  }
274 
276  static TK_Status GetData (BStreamFileToolkit & tk, double * d, int n) {
277  TK_Status status;
278  if ((status = GetData (tk, (char *)d, n * (int)sizeof (double))) == TK_Normal)
279  fix_in (d, n);
280  return status;
281  }
282 
284  static TK_Status GetData (BStreamFileToolkit & tk, unsigned char * b, int n) { return GetData (tk, (char *)b, n); }
285 
287  static TK_Status GetData (BStreamFileToolkit & tk, unsigned short * s, int n) { return GetData (tk, (short *)s, n); }
288 
290  static TK_Status GetData (BStreamFileToolkit & tk, unsigned int * i, int n) { return GetData (tk, (int *)i, n); }
291 
293  static TK_Status GetData (BStreamFileToolkit & tk, char & c) { return GetData (tk, &c, 1); }
294 
296  static TK_Status GetData (BStreamFileToolkit & tk, short & s) { return GetData (tk, &s, 1); }
297 
299  static TK_Status GetData (BStreamFileToolkit & tk, int & i) { return GetData (tk, &i, 1); }
300 
302  static TK_Status GetData (BStreamFileToolkit & tk, unsigned char & b) { return GetData (tk, &b, 1); }
303 
305  static TK_Status GetData (BStreamFileToolkit & tk, unsigned short & s) { return GetData (tk, &s, 1); }
306 
308  static TK_Status GetData (BStreamFileToolkit & tk, unsigned int & i) { return GetData (tk, &i, 1); }
309 
311  static TK_Status GetData (BStreamFileToolkit & tk, float & f) { return GetData (tk, &f, 1); }
312 
314  static TK_Status GetData (BStreamFileToolkit & tk, double & d) { return GetData (tk, &d, 1); }
315 
316 
319  TK_Status status = TK_Normal;
320 
321  if (tk.GetVersion() >= 1975 &&
322  (status = GetData (tk, m_general_flags)) != TK_Normal)
323  return status;
324 
325  return status;
326  }
327 
328 
329 
330 
332  static TK_Status LookatData (BStreamFileToolkit & tk, unsigned char & b) { return tk.lookat ((char &)b); }
333 
334  // various means of putting data into the toolkit buffer
335  // Note: format conversion is NOT safe in input buffer -- use temps
336 
338  static TK_Status PutData (BStreamFileToolkit & tk, char const * b, int n) { return tk.write (b, n); }
339 
341  static TK_Status PutData (BStreamFileToolkit & tk, short const * s, int n) {
342  #ifdef STREAM_BIGENDIAN
343  short * buffer;
344  short * tmp;
345  TK_Status status;
346  int i;
347  BSTREAM_ALLOC_ARRAY(buffer, n, short);
348  tmp = buffer;
349  for (i=0; i<n; ++i)
350  *tmp++ = flip (*s++);
351  status = PutData (tk, (char const *)buffer, n * (int)sizeof (short));
352  BSTREAM_FREE_ARRAY(buffer, n, short);
353  if (status != TK_Normal)
354  return status;
355  return TK_Normal;
356  #else
357  return PutData (tk, (char const *)s, n * (int)sizeof (short));
358  #endif
359  }
360 
362  static TK_Status PutData (BStreamFileToolkit & tk, int const * i, int n) {
363  #ifdef STREAM_BIGENDIAN
364  int * buffer;
365  int * tmp;
366  TK_Status status;
367  int j;
368  BSTREAM_ALLOC_ARRAY(buffer, n, int);
369  tmp = buffer;
370  for (j=0; j<n; ++j)
371  *tmp++ = flip (*i++);
372  status = PutData (tk, (char const *)buffer, n * (int)sizeof (int));
373  BSTREAM_FREE_ARRAY(buffer, n, int);
374  if (status != TK_Normal)
375  return status;
376  return TK_Normal;
377  #else
378  return PutData (tk, (char const *)i, n * (int)sizeof (int));
379  #endif
380  }
381 
383  static TK_Status PutData (BStreamFileToolkit & tk, float const * f, int n) {
384  #if defined(NON_IEEE) || defined(STREAM_BIGENDIAN)
385  float * buffer;
386  float * tmp;
387  TK_Status status;
388  int i;
389  BSTREAM_ALLOC_ARRAY(buffer, n, float);
390  tmp = buffer;
391  for (i=0; i<n; ++i) {
392  *tmp = *f++;
393  fix_out (tmp++, 1);
394  }
395  status = PutData (tk, (char const *)buffer, n * (int)sizeof (float));
396  BSTREAM_FREE_ARRAY(buffer, n, float);
397  if (status != TK_Normal)
398  return status;
399  return TK_Normal;
400  #else
401  return PutData (tk, (char const *)f, n * (int)sizeof (float));
402  #endif
403  }
404 
406  static TK_Status PutData (BStreamFileToolkit & tk, double const * d, int n) {
407  #if defined(NON_IEEE) || defined(STREAM_BIGENDIAN)
408  double * buffer;
409  double * tmp;
410  TK_Status status;
411  int i;
412  BSTREAM_ALLOC_ARRAY(buffer, n, double);
413  tmp = buffer;
414  for (i=0; i<n; ++i) {
415  *tmp = *d++;
416  fix_out (tmp++, 1);
417  }
418  status = PutData (tk, (char const *)buffer, n * (int)sizeof (double));
419  BSTREAM_FREE_ARRAY(buffer, n, double);
420  if (status != TK_Normal)
421  return status;
422  return TK_Normal;
423  #else
424  return PutData (tk, (char const *)d, n * (int)sizeof (double));
425  #endif
426  }
427 
429  static TK_Status PutData (BStreamFileToolkit & tk, unsigned char const * b, int n) { return PutData (tk, (char const *)b, n); }
430 
432  static TK_Status PutData (BStreamFileToolkit & tk, unsigned short const * s, int n) { return PutData (tk, (short const *)s, n); }
433 
435  static TK_Status PutData (BStreamFileToolkit & tk, unsigned int const * i, int n) { return PutData (tk, (int const *)i, n); }
436 
438  static TK_Status PutData (BStreamFileToolkit & tk, char const & c) { return PutData (tk, &c, 1); }
439 
441  static TK_Status PutData (BStreamFileToolkit & tk, short const & s) { return PutData (tk, &s, 1); }
442 
444  static TK_Status PutData (BStreamFileToolkit & tk, int const & i) { return PutData (tk, &i, 1); }
445 
447  static TK_Status PutData (BStreamFileToolkit & tk, unsigned char const & b) { return PutData (tk, &b, 1); }
448 
450  static TK_Status PutData (BStreamFileToolkit & tk, unsigned short const & s) { return PutData (tk, &s, 1); }
451 
453  static TK_Status PutData (BStreamFileToolkit & tk, unsigned int const & i) { return PutData (tk, &i, 1); }
454 
456  static TK_Status PutData (BStreamFileToolkit & tk, float const & f) { return PutData (tk, &f, 1); }
457 
459  static TK_Status PutData (BStreamFileToolkit & tk, double const & d) { return PutData (tk, &d, 1); }
460 
462  TK_Status PutOpcode (BStreamFileToolkit & tk, int adjust = 1) {
463  TK_Status status;
464  unsigned int sequence;
465 
466  if ((status = PutData (tk, Opcode ())) != TK_Normal)
467  return status;
468 
469  tk.adjust_written (adjust);
470 
471  sequence = tk.NextOpcodeSequence();
472  if (tk.GetLogging())
473  log_opcode (tk, sequence, Opcode());
474 
475  return status;
476  }
477 
480  TK_Status status = TK_Normal;
481 
482  if (tk.GetTargetVersion() >= 1975 &&
483  (status = PutData (tk, General_Flags ())) != TK_Normal)
484  return status;
485 
486  return status;
487  }
488 
489 
490 
491  /* note -- fix for int types will work during read OR write phase, but floats need separate routines for native->IEEE and IEEE->native
492  */
494  static short flip (short s) {
495  return (short)(((s >> 8) & 0x00FF) | (s << 8));
496  }
498  static int flip (int i) {
499  return ((i >> 24) & 0x000000FF) | ((i >> 8) & 0x0000FF00) |
500  ((i << 8) & 0x00FF0000) | (i << 24);
501  }
502 
503  #ifdef STREAM_BIGENDIAN
504  static void flip (double * d) {
506  char b[8];
507  memcpy (b, &d, sizeof(double));
508  Swap (b[0], b[7]);
509  Swap (b[1], b[6]);
510  Swap (b[2], b[5]);
511  Swap (b[3], b[4]);
512  memcpy (&d, b, sizeof(double));
513  }
514  #endif
515 
516 #ifndef DOXYGEN_SHOULD_SKIP_THIS
517  #ifndef UNREFERENCED
518  #define UNREFERENCED(x) (void)(x)
519  #endif
520 #endif
521 
523  static void fix (int * i, int n) {
524  #ifdef STREAM_BIGENDIAN
525  while (n--){
526  *i = flip (*i);
527  i++;
528  }
529  #else
530  UNREFERENCED(i);
531  UNREFERENCED(n);
532  #endif
533  }
535  static void fix (short * s, int n) {
536  #ifdef STREAM_BIGENDIAN
537  while (n--){
538  *s = flip (*s);
539  s++;
540  }
541  #else
542  UNREFERENCED(s);
543  UNREFERENCED(n);
544  #endif
545  }
546 
548  static void fix_in (float * f, int n) {
549  #ifdef NON_IEEE
550  // need to re-interpret from IEEE to native format
551  #endif
552 
553  #ifdef STREAM_BIGENDIAN
554  int * i = (int *) f;
555  while (n--) {
556  *i = flip (*i);
557  i++;
558  }
559  #else
560  UNREFERENCED(f);
561  UNREFERENCED(n);
562  #endif
563  }
565  static void fix_in (double * d, int n) {
566  #ifdef NON_IEEE
567  // need to re-interpret from IEEE to native format
568  #endif
569 
570  #ifdef STREAM_BIGENDIAN
571  while (n--) {
572  flip (d++);
573  }
574  #else
575  UNREFERENCED(d);
576  UNREFERENCED(n);
577  #endif
578  }
580  static void fix_out (float * f, int n) {
581  #ifdef NON_IEEE
582  // need to re-interpret from native format to IEEE
583  #endif
584 
585  #ifdef STREAM_BIGENDIAN
586  int * i = (int*) f;
587  while (n--) {
588  *i = flip (*i);
589  i++;
590  }
591  #else
592  UNREFERENCED(f);
593  UNREFERENCED(n);
594  #endif
595  }
597  static void fix_out (double * d, int n) {
598  #ifdef NON_IEEE
599  // need to re-interpret from native format to IEEE
600  #endif
601 
602  #ifdef STREAM_BIGENDIAN
603  while (n--) {
604  flip (d++);
605  }
606  #else
607  UNREFERENCED(d);
608  UNREFERENCED(n);
609  #endif
610  }
611 
613  void log_opcode (BStreamFileToolkit & tk, unsigned int sequence, unsigned char opcode);
614 
615 
616  /* common conversions
617  these two are for converting between floats [0.0,1.0] and unsigned chars [0,255]
618  */
620  void floats_to_bytes (float const * in, unsigned char * out, int count) const {
621  while (count-- > 0)
622  *out++ = char (*in++ * 255.999f);
623  }
625  void bytes_to_floats (unsigned char const * in, float * out, int count) const {
626  while (count-- > 0)
627  *out++ = float (*in++) * (1.0f/255.0f);
628  }
629 
630  // access to toolkit utility functions
632  void add_segment (BStreamFileToolkit & tk, ID_Key key) { tk.add_segment (key); }
634  ID_Key remove_segment (BStreamFileToolkit & tk) { return tk.remove_segment(); }
636  void set_last_key (BStreamFileToolkit & tk, ID_Key key) { tk.set_last_key (key); }
639  if (tk.m_last_keys_used == 1)
640  return tk.m_last_keys[0];
641  else
642  return -1;
643  }
645  void adjust_written (BStreamFileToolkit & tk, int count) { tk.adjust_written (count); }
647  void increase_nesting (BStreamFileToolkit & tk, int amount=1) { tk.increase_nesting (amount); }
649  void decrease_nesting (BStreamFileToolkit & tk, int amount=1) { tk.decrease_nesting (amount); }
650 
654  void Revisit (BStreamFileToolkit & tk, float priority=0.0f, int variant=0) const { tk.revisit (Opcode(), priority, variant); }
655 
659  BBaseOpcodeHandler * Opcode_Handler (BStreamFileToolkit & tk, unsigned char op) const
660  { return tk.opcode_handler (op); }
661 
663  void Record_Instance (BStreamFileToolkit & tk, ID_Key key, int variant,
664  int val1, int val2, int val3) const {
665  tk.record_instance (key, variant, this, val1, val2, val3);
666  }
668  bool Find_Instance (BStreamFileToolkit & tk, int val1, int val2, int val3) {
669  return tk.find_instance (this, val1, val2, val3);
670  }
671 
673  void Remember_Item (BStreamFileToolkit & tk, ID_Key key) const { tk.remember_item(key); }
675  bool Find_Item (BStreamFileToolkit & tk, ID_Key key) const { return tk.find_item(key); }
676 
678  bool validate_count (int count, int limit = 1<<24) const { return 0 <= count && count <= limit; }
679 
683  static float read_float (char const *cp, char const ** newcpp = 0);
685  static float read_float (char const *cp, char ** newcpp)
686  { return read_float (cp, (char const **)newcpp); }
688  static char * write_float (char * buffer, double f);
689 
690 
691 
693  TK_Status SkipNewlineAndTabs(BStreamFileToolkit & tk, unsigned int* readSize=0);
695  TK_Status ReadAsciiLine(BStreamFileToolkit & tk, unsigned int* readSize=0);
697  TK_Status ReadAsciiWord(BStreamFileToolkit & tk, unsigned int* readSize=0);
699  TK_Status ReadEndOpcode(BStreamFileToolkit & tk);
701  bool RemoveAngularBrackets(char* string);
703  bool RemoveQuotes(char* string);
705  TK_Status Read_Referenced_Segment(BStreamFileToolkit & tk, int &i_progress);
706 
707  //TK_Status GetAsciiData(BStreamFileToolkit & tk, float * rFloats, unsigned int n);
708 
710  TK_Status GetAsciiData(BStreamFileToolkit & tk, int * rInts, unsigned int n);
711  //TK_Status GetAsciiData(BStreamFileToolkit & tk, short * rShorts, unsigned int n);
712 
714  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, unsigned char& value);
716  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, char& value);
718  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, unsigned short& value);
720  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, short& value);
722  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, int& value);
724  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, float& value);
726  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, float * rFloats, unsigned int n);
728  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, char * m_string, unsigned int n);
730  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, unsigned char * m_string, unsigned int n);
732  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, int * rInts, unsigned int n);
734  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, short * rShorts, unsigned int n);
736  TK_Status GetAsciiData(BStreamFileToolkit & tk, const char * tag, unsigned short * rShorts, unsigned int n);
738  TK_Status GetAsciiHex(BStreamFileToolkit & tk, const char * tag, unsigned char &value);
740  TK_Status GetAsciiHex(BStreamFileToolkit & tk, const char * tag, int &value);
742  TK_Status GetAsciiHex(BStreamFileToolkit & tk, const char * tag, char &value);
744  TK_Status GetAsciiHex(BStreamFileToolkit & tk, const char * tag, unsigned short &value);
746  TK_Status GetAsciiImageData(BStreamFileToolkit & tk, const char * tag, unsigned char * rValues, unsigned int n);
747 
749  TK_Status PutAsciiOpcode (BStreamFileToolkit & tk, int adjust = 1, bool is_end = false, bool want_newline = true);
750  // TK_Status PutAsciiOpcode (BStreamFileToolkit & tk, int adjust = 1);
751 
753  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, char const * b, int n);
755  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, short const * s, int n);
757  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, int const * i, int n);
759  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, float const * f, int n);
761  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, unsigned char const * b, int n);
763  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, unsigned short const * s, int n);
765  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, unsigned int const * i, int n);
767  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, char const & c);
769  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, short const & s);
771  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, int const & i);
773  TK_Status PutAsciiFlag (BStreamFileToolkit & tk, char const *tag, int const & i);
775  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, unsigned char const & b);
777  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, unsigned short const & s);
779  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, unsigned int const & i);
781  TK_Status PutAsciiData (BStreamFileToolkit & tk, char const *tag, float const & f);
783  TK_Status PutAsciiMask (BStreamFileToolkit & tk,char const *tag, int const & i);
785  TK_Status PutAsciiHex (BStreamFileToolkit & tk, char const *tag, int const & i);
787  TK_Status PutStartXMLTag (BStreamFileToolkit & tk, char const *tag);
789  TK_Status PutEndXMLTag (BStreamFileToolkit & tk, char const *tag);
790 };
791 
793 #define IMPLEMENT_CLONE(class_name) \
794  TK_Status class_name::Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **newhandler) const { \
795  *newhandler = BSTREAM_NEW(class_name); \
796  if (*newhandler != null) \
797  return TK_Normal; \
798  else \
799  return tk.Error ("memory allocation in" #class_name "::clone failed"); \
800  } //
801 #define IMPLEMENT_CLONE_OPCODE(class_name) \
803  TK_Status class_name::Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **newhandler) const { \
804  *newhandler = BSTREAM_NEW(class_name)(Opcode()); \
805  if (*newhandler != null) \
806  return TK_Normal; \
807  else \
808  return tk.Error ("memory allocation in" #class_name "::clone failed"); \
809 } //
810 
811 
812 
814 
822 // Additions need to be reflected in the 'opcode_string' table in BOpcodeHandler.cpp
824  TKE_Termination = '\x00',
825  TKE_Pause = '\x01',
826  TKE_Comment = ';',
828  TKE_Font = 'f',
830  TKE_Texture = 't',
831  TKE_Material = '\x02',
832  TKE_Open_Segment = '(',
834  TKE_Close_Segment = ')',
835  TKE_Reopen_Segment = 's',
836  TKE_Include_Segment = '<',
837  TKE_Style_Segment = '{',
839  TKE_Geometry_Attributes = ':',
841  TKE_Renumber_Key_Global = 'K',
842  TKE_Renumber_Key_Local = 'k',
843  TKE_Priority = '0',
844  TKE_Tag = 'q',
845  TKE_Bounding = 'b',
847  TKE_Bounding_Info = 'B',
848  TKE_Callback = '\x07',
849  TKE_Camera = '>',
850  TKE_Conditional_Action = '\'',
851  TKE_Conditions = '?',
852  TKE_Color = '"',
853  TKE_Color_By_Index = '\x08',
854  TKE_Color_By_Index_16 = '\x09',
855  TKE_Color_By_FIndex = '\x0A',
856  TKE_Color_RGB = '~',
857  TKE_Color_By_Value = '\x0B',
858  TKE_Color_Map = '\x0C',
859  TKE_Edge_Pattern = '\x0D',
860  TKE_Edge_Weight = '\x0E',
861  TKE_Face_Pattern = 'P',
862  TKE_Geometry_Options = '\x17',
863  TKE_Handedness = 'h',
864  TKE_Heuristics = 'H',
865  TKE_Line_Pattern = '-',
866  TKE_Line_Weight = '=',
867  TKE_Marker_Size = '+',
868  TKE_Marker_Symbol = '@',
869  TKE_Modelling_Matrix = '%',
870  TKE_LOD = '\x19',
871  TKE_Rendering_Options = 'R',
872  TKE_Selectability = '!',
873  TKE_Text_Alignment = '*',
874  TKE_Text_Font = 'F',
875  TKE_Text_Path = '|',
876  TKE_Text_Spacing = ' ',
877  TKE_Texture_Matrix = '$',
878  TKE_Unicode_Options = '\x16',
879  TKE_User_Index = 'n',
880  TKE_User_Index_Data = 'm',
881  TKE_User_Options = 'U',
882  TKE_User_Value = 'v',
883  TKE_Visibility = 'V',
884  TKE_Window = 'W',
885  TKE_Window_Frame = '#',
886  TKE_Window_Pattern = 'p',
887  TKE_Glyph_Definition = 'j',
888  TKE_Line_Style = 'J',
890  TKE_Area_Light = 'a',
892  TKE_Circle = 'C',
893  TKE_Circular_Arc = 'c',
894  TKE_Circular_Chord = '\\',
895  TKE_Circular_Wedge = 'w',
896  TKE_Cutting_Plane = '/',
897  TKE_Cylinder = 'Y',
898  TKE_Distant_Light = 'd',
899  TKE_Ellipse = 'E',
900  TKE_Elliptical_Arc = 'e',
901  TKE_Grid = 'g',
902  TKE_Image = 'i',
903  TKE_Infinite_Line = '`',
904  TKE_Infinite_Ray = '\x11',
905  TKE_Line = 'l',
906  TKE_Local_Light = '.',
907  TKE_Marker = 'X',
908  TKE_Mesh = 'M',
909  TKE_NURBS_Curve = 'N',
910  TKE_NURBS_Surface = 'A',
911  TKE_PolyCylinder = 'Q',
912  TKE_Polygon = 'G',
913  TKE_Polyline = 'L',
914  TKE_PolyPolyline = '\x10',
915  TKE_Reference = 'r',
916  TKE_Shell = 'S',
917  TKE_Sphere = '\x1a',
918  TKE_Spot_Light = '^',
919  TKE_Text = 'T',
921  TKE_Start_User_Data = '[',
923  TKE_Stop_User_Data = ']',
924  TKE_XML = '\x18',
925  TKE_External_Reference = '\x12',
926  TKE_External_Reference_Unicode = '\x13',
927  TKE_URL = '\x15',
928  TKE_Start_Compression = 'Z',
931  TKE_Repeat_Object = '&',
933  TKE_View = '}',
934  TKE_Clip_Rectangle = 'o',
935  TKE_Clip_Region = 'O',
937  TKE_File_Info = 'I',
939  TKE_Dictionary = 'D',
940  TKE_Dictionary_Locater = '_',
941  TKE_Thumbnail = '\x14',
942  TKE_Delete_Object = '\x7F',
946 
949  TKE_HW3D_Image = 0xE0,
953 };
954 
955 
957 
958 
964 class BBINFILETK_API TK_Default : public BBaseOpcodeHandler {
965 
966  protected:
967  char * m_opcode_buffer;
968  int m_buffer_count;
969 
970  public:
972  TK_Default () : BBaseOpcodeHandler (TKE_Pseudo_Handler) {m_opcode_buffer = 0, m_buffer_count = 0;}
973 
975 
977 
978 
979  TK_Status ReadAscii (BStreamFileToolkit & tk);
980  TK_Status WriteAscii (BStreamFileToolkit & tk);
981 
982 };
983 
989 class BBINFILETK_API TK_Unavailable : public BBaseOpcodeHandler {
990  public:
992  TK_Unavailable (char opcode) : BBaseOpcodeHandler (opcode) {}
993 
996 };
997 
1000 
1006 class BBINFILETK_API TK_Header : public BBaseOpcodeHandler {
1007  protected:
1010 
1011  public:
1013  TK_Header () : BBaseOpcodeHandler (TKE_Pseudo_Handler), m_current_object (0) {}
1014  ~TK_Header();
1015 
1018 
1019 
1020  TK_Status ReadAscii (BStreamFileToolkit & tk);
1021  TK_Status WriteAscii (BStreamFileToolkit & tk);
1022 
1023 
1024  void Reset ();
1025 };
1026 
1027 
1029 
1035 class BBINFILETK_API TK_File_Info : public BBaseOpcodeHandler {
1036  protected:
1038  int m_flags;
1039 
1040  public:
1042  TK_File_Info () : BBaseOpcodeHandler (TKE_File_Info), m_flags (0) {}
1043 
1044 
1048  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant);
1049  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1050  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
1051 
1052 
1053  TK_Status ReadAscii (BStreamFileToolkit & tk);
1054  TK_Status WriteAscii (BStreamFileToolkit & tk);
1055 
1056 
1058  void SetFlags (int f) { m_flags = f; }
1060  int GetFlags () { return m_flags; }
1061 };
1062 
1063 
1065 
1073 class BBINFILETK_API TK_Comment : public BBaseOpcodeHandler {
1074  protected:
1080  char * m_comment;
1081 
1083  void set_comment (char const * comment);
1085  void set_comment (int length);
1086 
1087  public:
1089  TK_Comment (char const * comment = 0);
1090  ~TK_Comment();
1091 
1095 
1096  TK_Status ReadAscii (BStreamFileToolkit & tk);
1097  TK_Status WriteAscii (BStreamFileToolkit & tk);
1098  TK_Status ExecuteAscii (BStreamFileToolkit & tk);
1101  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant) {
1102  (void)tk; (void)key; (void)variant;
1103  return TK_Normal;
1104  }
1105  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1106  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
1107  void Reset ();
1108 
1113  void SetComment (char const * comment) { set_comment (comment); }
1118  void SetComment (int length) { set_comment (length); }
1122  char const * GetComment () const { return m_comment; }
1127  char * GetComment () { return m_comment; }
1128 };
1129 
1130 
1132 
1140 class BBINFILETK_API TK_Terminator : public BBaseOpcodeHandler {
1141  public:
1143  TK_Terminator (char opcode, bool is_file_terminator = true) : BBaseOpcodeHandler (opcode),
1144  m_terminate_file(is_file_terminator) {}
1145 
1149 
1150 
1151  TK_Status ReadAscii (BStreamFileToolkit & tk);
1152  TK_Status WriteAscii (BStreamFileToolkit & tk);
1153 
1154  protected:
1156  // meant to terminate the file or something else (viz. LOD collection)
1158 };
1159 
1160 
1162 
1169 class BBINFILETK_API TK_Compression : public BBaseOpcodeHandler {
1170  public:
1172  TK_Compression (char opcode) : BBaseOpcodeHandler (opcode) {}
1173 
1176 
1177  TK_Status ReadAscii (BStreamFileToolkit & tk);
1178  TK_Status WriteAscii (BStreamFileToolkit & tk);
1180  TK_Status ExecuteAscii (BStreamFileToolkit & tk);
1181  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant);
1182  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1183  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
1184 };
1185 
1187 
1192  // first byte is common/shared items, plus flag for extended bits
1193  TKO_Geo_Face = 0x00000001,
1194  TKO_Geo_Edge = 0x00000002,
1195  TKO_Geo_Line = 0x00000004,
1196  TKO_Geo_Marker = 0x00000008,
1197  TKO_Geo_Text = 0x00000010,
1198  TKO_Geo_Window = 0x00000020,
1199  TKO_Geo_Image = 0x00000040,
1200 
1201  TKO_Geo_Extended = 0x00000080,
1202  TKO_Geo_Extended_Mask = 0xFFFFFF00,
1204 
1205  // extras for color
1206  TKO_Geo_Ambient_Up = 0x00000100,
1207  TKO_Geo_Light = 0x00000200,
1208  TKO_Geo_Face_Contrast = 0x00000400,
1210  TKO_Geo_Front = 0x00001000,
1211  TKO_Geo_Back = 0x00002000,
1212  TKO_Geo_Vertex = 0x00004000,
1213  TKO_Geo_Geom_Colors = 0x0000701F,
1214  TKO_Geo_Every_Colors = 0x000073BF,
1215 
1218  = 0xFFFF0000,
1220  = 16,
1221 
1222  TKO_Geo_Edge_Contrast = 0x00010000,
1223  TKO_Geo_Line_Contrast = 0x00020000,
1226  TKO_Geo_Cut_Edge = 0x00100000,
1228  TKO_Geo_Cut_Face = 0x00400000,
1229 
1230  TKO_Geo_Extended2 = 0x00800000,
1231  TKO_Geo_Extended2_Mask = 0xFF000000,
1233 
1234  TKO_Geo_Text_Contrast = 0x01000000,
1235  TKO_Geo_Ambient_Down = 0x02000000,
1237  = 0x04000000,
1238  TKO_Geo_Ambient = 0x02000100,
1239  TKO_Geo_All_Colors = 0x077F7F7F,
1240 
1241  //extras for selectability
1242  TKO_Geo_String_Cursor = 0x00000100,
1243 // TKO_Geo_Light = 0x00000200, //!< extra item for selectability; refer to ::HC_Set_Selectability for a description
1244 // TKO_Geo_Vertex = 0x00004000, //!< extra item for selectability; refer to ::HC_Set_Selectability for a description
1245  TKO_Geo_Isoline = 0x00000080,
1246  TKO_Geo_Geom_Selects = 0x0000435F,
1247  TKO_Geo_All_Selects = 0x000043FF,
1248 
1249  // extras for visibility
1250 // TKO_Geo_String_Cursor = 0x00000100, //!< extra item for visibility; refer to ::HC_Set_Visibility for a description
1251  TKO_Geo_Face_Lighting = 0x00000200,
1252  TKO_Geo_Edge_Lighting = 0x00000400,
1254  TKO_Geo_Light_Visibles = 0x00000E00,
1255 
1257  TKO_Geo_Perimeter_Edge = 0x00002000,
1258  TKO_Geo_Mesh_Quad = 0x00004000,
1259  TKO_Geo_Hard_Edge = 0x00008000,
1260  TKO_Geo_Cutting_Plane = 0x00010000,
1261  TKO_Geo_Shadow_Emit = 0x00020000,
1262  TKO_Geo_Shadow_Cast = 0x00040000,
1263  TKO_Geo_Shadow_Receive = 0x00080000,
1265 // TKO_Geo_Cut_Edge = 0x00100000, //!< extra item for visibility; refer to ::HC_Set_Visibility for a description
1266  TKO_Geo_Vertex_Vis = 0x00200000,
1267 // TKO_Geo_Cut_Face = 0x00400000, //!< extra item for visibility; refer to ::HC_Set_Visibility for a description
1268  TKO_Geo_Cut_Geometry = 0x00500000,
1269 
1270  TKO_Geo_Adjacent_Edge = 0x01000000,
1271  TKO_Geo_NonCulled_Edge = 0x02000000,
1272  TKO_Geo_Edge_Visibles = 0x0300F002,
1273 
1274 
1275  TKO_Geo_Geom_Visibles = 0x0301FFFF,
1276 
1277 
1278 
1279  TKO_Geo_All_Visibles = 0x037FFF7F
1280 };
1281 
1282 
1297 
1298  TKO_Channel_Count = 10,
1299 
1302 };
1303 
1304 
1306 
1311  TKO_Lock_Callback = 0x00000001,
1312  TKO_Lock_Camera = 0x00000002,
1313  TKO_Lock_Color = 0x00000004,
1314  TKO_Lock_Color_Map = 0x00000008,
1315  TKO_Lock_Driver = 0x00000010,
1317  TKO_Lock_Edge_Pattern = 0x00000040,
1318  TKO_Lock_Edge_Weight = 0x00000080,
1319  TKO_Lock_Face_Pattern = 0x00000100,
1320  TKO_Lock_Handedness = 0x00000200,
1321  TKO_Lock_Heuristics = 0x00000400,
1322  TKO_Lock_Line_Pattern = 0x00000800,
1323  TKO_Lock_Line_Weight = 0x00001000,
1324  TKO_Lock_Marker_Size = 0x00002000,
1325  TKO_Lock_Marker_Symbol = 0x00004000,
1326  TKO_Lock_Metafile = 0x00008000,
1329  TKO_Lock_Selectability = 0x00040000,
1330  TKO_Lock_Styles = 0x00080000,
1332  TKO_Lock_Text_Font = 0x00200000,
1333  TKO_Lock_Text_Path = 0x00400000,
1334  TKO_Lock_Text_Spacing = 0x00800000,
1335  TKO_Lock_User_Options = 0x01000000,
1336  TKO_Lock_User_Value = 0x02000000,
1338  TKO_Lock_Visibility = 0x08000000,
1339  TKO_Lock_Window = 0x10000000,
1340  TKO_Lock_Window_Frame = 0x20000000,
1342  TKO_Lock_All = 0x7FFFFFFF
1343 
1344 };
1345 
1360 };
1361 
1362 
1363 // this should be based off a "data handling" interface class broken out from BBaseOpcodeHandler
1364 class BBINFILETK_API Lock_Masks : public BBaseOpcodeHandler {
1365  public:
1366  int mask;
1367  int value;
1408 
1409 
1410  Lock_Masks () : BBaseOpcodeHandler (0) {}
1412  TK_Status Write (BStreamFileToolkit &) { return TK_Error; } //-V524
1413 
1414  TK_Status Read (BStreamFileToolkit & tk, bool mask_only);
1415  TK_Status Write (BStreamFileToolkit & tk, bool mask_only);
1416 
1417  void init() {
1418  mask = value = 0;
1419  color_mask = color_value = 0;
1420  color_face_mask = color_face_value =
1421  color_edge_mask = color_edge_value =
1422  color_line_mask = color_line_value =
1423  color_marker_mask = color_marker_value =
1424  color_text_mask = color_text_value =
1425  color_window_mask = color_window_value =
1426  color_face_contrast_mask = color_face_contrast_value =
1427  color_window_contrast_mask = color_window_contrast_value =
1428  color_back_mask = color_back_value =
1429  color_vertex_mask = color_vertex_value =
1430  color_edge_contrast_mask = color_edge_contrast_value =
1431  color_line_contrast_mask = color_line_contrast_value =
1432  color_marker_contrast_mask = color_marker_contrast_value =
1433  color_vertex_contrast_mask = color_vertex_contrast_value =
1434  color_text_contrast_mask = color_text_contrast_value = 0;
1435  color_simple_reflection_mask = color_simple_reflection_value = 0;
1436  color_cut_face_mask = color_cut_face_value = 0;
1437  color_cut_edge_mask = color_cut_edge_value = 0;
1438  visibility_mask = visibility_value = 0;
1439  }
1440 
1441  void set_color() {
1442  color_mask = color_value = TKO_Geo_All_Colors;
1443  color_face_mask = color_face_value =
1444  color_edge_mask = color_edge_value =
1445  color_line_mask = color_line_value =
1446  color_marker_mask = color_marker_value =
1447  color_text_mask = color_text_value =
1448  color_window_mask = color_window_value =
1449  color_face_contrast_mask = color_face_contrast_value =
1450  color_window_contrast_mask = color_window_contrast_value =
1451  color_back_mask = color_back_value =
1452  color_vertex_mask = color_vertex_value =
1453  color_edge_contrast_mask = color_edge_contrast_value =
1454  color_line_contrast_mask = color_line_contrast_value =
1455  color_marker_contrast_mask = color_marker_contrast_value =
1456  color_vertex_contrast_mask = color_vertex_contrast_value =
1457  color_text_contrast_mask = color_text_contrast_value =
1458  color_simple_reflection_mask = color_simple_reflection_value =
1459  color_cut_face_mask = color_cut_face_value =
1460  color_cut_edge_mask = color_cut_edge_value =
1462  }
1463 };
1464 
1466 
1468 
1478 class BBINFILETK_API TK_Open_Segment : public BBaseOpcodeHandler {
1479  protected:
1480  int m_length;
1482  char * m_string;
1484  void set_segment (char const * segment);
1487  void set_segment (int length);
1488 
1489  public:
1491  TK_Open_Segment () : BBaseOpcodeHandler (TKE_Open_Segment), m_length (0), m_allocated (0), m_string (0) {}
1492  ~TK_Open_Segment();
1493 
1496  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1497 
1498  TK_Status ReadAscii (BStreamFileToolkit & tk);
1499  TK_Status WriteAscii (BStreamFileToolkit & tk);
1500  void Reset ();
1501 
1506  void SetSegment (char const * segment) { set_segment (segment); }
1507 
1512  void SetSegment (int length) { set_segment (length); }
1513 
1517  char const * GetSegment () const { return m_string; }
1522  char * GetSegment () { return m_string; }
1523 
1524 };
1525 
1526 
1528 
1537 class BBINFILETK_API TK_Close_Segment : public BBaseOpcodeHandler {
1538  public:
1540  TK_Close_Segment () : BBaseOpcodeHandler (TKE_Close_Segment) {}
1541 
1544  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1545 
1546  TK_Status ReadAscii (BStreamFileToolkit & tk);
1547  TK_Status WriteAscii (BStreamFileToolkit & tk);
1548 };
1549 
1550 
1551 
1553 
1565 class BBINFILETK_API TK_Reopen_Segment : public BBaseOpcodeHandler {
1566  protected:
1567  int m_index;
1569  public:
1571  TK_Reopen_Segment () : BBaseOpcodeHandler (TKE_Reopen_Segment), m_index (-1) {}
1572 
1575  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1576 
1577  TK_Status ReadAscii (BStreamFileToolkit & tk);
1578  TK_Status WriteAscii (BStreamFileToolkit & tk);
1579 
1581  void SetIndex (int i) { m_index = i; }
1583  int GetIndex () const { return m_index; }
1584 };
1585 
1586 
1588 
1596 class BBINFILETK_API TK_Referenced_Segment : public BBaseOpcodeHandler {
1597  protected:
1598  int m_length;
1600  char * m_string;
1603  char * m_condition;
1607  unsigned char m_renumbered_scope;
1609  bool m_follow;
1611 
1612  bool m_referee_has_priority;
1613  int m_referee_priority;
1614 
1615  void set_segment (char const * segment);
1616  void set_segment (int length);
1617 
1618  public:
1620  TK_Referenced_Segment (unsigned char opcode);
1622 
1625  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1626 
1627  TK_Status ReadAscii (BStreamFileToolkit & tk);
1628  TK_Status WriteAscii (BStreamFileToolkit & tk);
1629  void Reset ();
1630 
1635  void SetSegment (char const * segment) { set_segment (segment); }
1640  void SetSegment (int length) { set_segment (length); }
1644  char const * GetSegment () const { return m_string; }
1649  char * GetSegment () { return m_string; }
1650 
1651 
1656  void SetCondition (char const * condition);
1661  void SetCondition (int length);
1665  char const * GetCondition () const { return m_condition; }
1670  char * GetCondition () { return m_condition; }
1671 
1672 
1674  void SetFollow (bool f) { m_follow = f; }
1676  bool GetFollow () { return m_follow; }
1677 
1678 };
1679 
1680 
1682 
1690 class BBINFILETK_API TK_Reference : public BBaseOpcodeHandler {
1691  protected:
1692  int m_index;
1695  char * m_condition;
1700  bool m_follow;
1701 
1702  public:
1704  TK_Reference ();
1705  ~TK_Reference();
1706 
1709  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1710 
1711  TK_Status ReadAscii (BStreamFileToolkit & tk);
1712  TK_Status WriteAscii (BStreamFileToolkit & tk);
1713  void Reset ();
1714 
1716  void SetIndex (int index) { m_index = index; }
1718  ID_Key GetIndex () { return m_index; }
1719 
1724  void SetCondition (char const * condition);
1729  void SetCondition (int length);
1733  char const * GetCondition () const { return m_condition; }
1738  char * GetCondition () { return m_condition; }
1739 
1740 
1742  void SetFollow (bool f) { m_follow = f; }
1744  bool GetFollow () { return m_follow; }
1745 };
1746 
1747 
1753 };
1754 
1755 
1757 
1765 class BBINFILETK_API TK_Instance : public BBaseOpcodeHandler {
1766  protected:
1772  float m_matrix[16];
1773 
1774  public:
1776  TK_Instance (int from_index=0, int from_variant=0, int to_index=0, int to_variant=0,
1777  int options=0, float const xform[]=0);
1778 
1781  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1782 
1783  TK_Status ReadAscii (BStreamFileToolkit & tk);
1784  TK_Status WriteAscii (BStreamFileToolkit & tk);
1785 
1786  void Reset ();
1787 };
1788 
1790 
1793 class BBINFILETK_API TK_Delete_Object : public BBaseOpcodeHandler {
1794  protected:
1795  int m_index;
1796 
1797  public:
1800 
1803  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1804 
1805  TK_Status ReadAscii (BStreamFileToolkit & tk);
1806  TK_Status WriteAscii (BStreamFileToolkit & tk);
1807 
1809  void SetIndex (int i) { m_index = i; }
1811  int GetIndex () { return m_index; }
1812 };
1813 
1814 
1816 
1817 
1819 
1822 class BBINFILETK_API TK_LOD : public BBaseOpcodeHandler {
1823  protected:
1829  struct vlist_s *m_current_working;
1831 
1832  TK_Status ReadOneList (BStreamFileToolkit & tk);
1833 
1834  public:
1836  TK_LOD () : BBaseOpcodeHandler (TKE_LOD) {
1837  m_num_primitives = 0;
1838  m_primitives = 0;
1839  m_highest_level = 0;
1840  m_levels_allocated = 0;
1841  m_substage = 0;
1842  m_current_working = 0;
1843  m_current_level = 0;
1844  }
1845  ~TK_LOD();
1846 
1849  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1850 
1851  TK_Status ReadAscii (BStreamFileToolkit & tk);
1852  TK_Status WriteAscii (BStreamFileToolkit & tk);
1853 
1854  void Reset ();
1855 };
1857 #define TKLOD_ESCAPE 255
1858 
1859 
1861 
1863 
1868 class BBINFILETK_API TK_Geometry_Attributes : public BBaseOpcodeHandler {
1869  protected:
1870 
1871  public:
1873  TK_Geometry_Attributes () : BBaseOpcodeHandler (TKE_Geometry_Attributes) {}
1874 
1877 
1878  TK_Status ReadAscii (BStreamFileToolkit & tk);
1879  TK_Status WriteAscii (BStreamFileToolkit & tk);
1881 };
1882 
1884 
1894 class BBINFILETK_API TK_Renumber : public BBaseOpcodeHandler {
1895  protected:
1897 
1898  public:
1902  TK_Renumber (unsigned char opcode, ID_Key key = 0) : BBaseOpcodeHandler (opcode), m_key (key) {}
1903 
1906  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1907 
1908  TK_Status ReadAscii (BStreamFileToolkit & tk);
1909  TK_Status WriteAscii (BStreamFileToolkit & tk);
1910 
1911  void SetKey (ID_Key k) { m_key = k; }
1913  ID_Key GetKey () const { return m_key; }
1914 };
1915 
1916 
1918 
1923 class BBINFILETK_API TK_Tag : public BBaseOpcodeHandler {
1924  protected:
1925 
1926  public:
1928  TK_Tag (unsigned char opcode = TKE_Tag) : BBaseOpcodeHandler (opcode) {}
1929 
1932 
1933  TK_Status ReadAscii (BStreamFileToolkit & tk);
1934  TK_Status WriteAscii (BStreamFileToolkit & tk);
1935 
1937  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1938  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1939  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
1940 };
1941 
1943 
1950 // Note: unlike most opcode handlers, this one does not contain its own data, it is primarily a
1951 // wrapper around the key <-> index translation table in the toolkit.
1952 class BBINFILETK_API TK_Dictionary : public BBaseOpcodeHandler {
1953  protected:
1954  unsigned char m_format;
1956  unsigned char m_present;
1958 
1959  Internal_Translator::Index_Key_Pair * m_item;
1960 
1961  public:
1963  TK_Dictionary () : BBaseOpcodeHandler (TKE_Dictionary), m_format (0) {}
1964 
1967 
1968  TK_Status ReadAscii (BStreamFileToolkit & tk);
1969  TK_Status WriteAscii (BStreamFileToolkit & tk);
1970 
1972  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1973  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1974  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
1975  void Reset ();
1976 };
1977 
1978 
1980 
1987 class BBINFILETK_API TK_Dictionary_Locater : public BBaseOpcodeHandler {
1988  protected:
1989  int m_size;
1990  int m_offset;
1991 
1992  public:
1994  TK_Dictionary_Locater () : BBaseOpcodeHandler (TKE_Dictionary_Locater), m_offset (0) {}
1995 
1998 
1999  TK_Status ReadAscii (BStreamFileToolkit & tk);
2000  TK_Status WriteAscii (BStreamFileToolkit & tk);
2001 
2003  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
2004  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
2005  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
2006  void Reset ();
2007 
2009  void SetSize (int size) { m_size = size; }
2011  int GetSize () const { return m_size; }
2013  void SetOffset (int offset) { m_offset = offset; }
2015  int GetOffset () const { return m_offset; }
2016 };
2017 
2018 
2020 
2021 
2023 
2028 class BBINFILETK_API TK_Color : public BBaseOpcodeHandler {
2029  protected:
2030  int m_mask;
2031  short m_channels;
2032 
2036  class BBINFILETK_API channel {
2037  public:
2038  float m_rgb[3];
2039  char * m_name;
2040 
2041  channel() : m_name (0) {}
2042  ~channel() { Reset(); }
2043  void Reset () {
2044  if (m_name)
2045  BSTREAM_FREE_ARRAY(m_name, (int)(strlen(m_name) + 1), char);
2046  m_name = 0;
2047  }
2048  };
2049 
2057  float m_gloss;
2058  float m_index;
2060 
2062  void set_channel_rgb (channel & c, float r, float g, float b, int which_channel = -1) {
2063  c.m_rgb[0] = r; c.m_rgb[1] = g; c.m_rgb[2] = b;
2064  if (which_channel != -1) {
2065  m_channels |= (1 << which_channel);
2066  if (which_channel > TKO_Channel_Extended)
2067  m_channels |= (1 << TKO_Channel_Extended);
2068  }
2069  }
2071  void set_channel_name (channel & c, char const * name, int which_channel = -1);
2073  void set_channel_name (channel & c, int length, int which_channel = -1);
2074 
2075  public:
2076  TK_Color ();
2077  ~TK_Color ();
2078 
2079  TK_Status Read (BStreamFileToolkit & tk);
2080  TK_Status Write (BStreamFileToolkit & tk);
2081  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
2082 
2083  TK_Status ReadAscii (BStreamFileToolkit & tk);
2084  TK_Status WriteAscii (BStreamFileToolkit & tk);
2085 
2086  void Reset ();
2087 
2089  void SetGeometry (int m) {
2090  m_mask = m & TKO_Geo_All_Colors;
2091  if ((m & TKO_Geo_Extended_Mask) != 0) {
2092  m_mask |= TKO_Geo_Extended;
2093  if ((m & TKO_Geo_Extended_Colors_Mask) != 0) {
2094  m_mask |= TKO_Geo_Extended_Colors;
2095  if ((m & TKO_Geo_Extended2_Mask) != 0)
2096  m_mask |= TKO_Geo_Extended2;
2097  }
2098  }
2099  }
2101  int GetGeometry () const { return m_mask; }
2103  void SetChannels (int c) {
2104  m_channels = (short)c;
2105  if ((c & (((unsigned int)~0) << (TKO_Channel_Extended_Shift))) != 0)
2106  m_channels |= (1 << TKO_Channel_Extended);
2107  }
2109  int GetChannels () const { return (int)m_channels; }
2110 
2112  void SetDiffuse (float r, float g, float b) { set_channel_rgb (m_diffuse, r, g, b, TKO_Channel_Diffuse); }
2114  void SetDiffuse (float const rgb[]) { SetDiffuse (rgb[0], rgb[1], rgb[2]); }
2116  void SetDiffuseName (char const * name) { set_channel_name (m_diffuse, name, TKO_Channel_Diffuse); }
2118  void SetDiffuseName (int length) { set_channel_name (m_diffuse, length, TKO_Channel_Diffuse); }
2120  float const * GetDiffuse () const { return m_diffuse.m_rgb; }
2122  char const * GetDiffuseName () const { return m_diffuse.m_name; }
2124  char * GetDiffuseName () { return m_diffuse.m_name; }
2125 
2127  void SetSpecular (float r, float g, float b) { set_channel_rgb (m_specular, r, g, b, TKO_Channel_Specular);}
2129  void SetSpecular (float const rgb[]) { SetSpecular (rgb[0], rgb[1], rgb[2]); }
2131  void SetSpecularName (char const * name) { set_channel_name (m_specular, name, TKO_Channel_Specular); }
2133  void SetSpecularName (int length) { set_channel_name (m_specular, length, TKO_Channel_Specular);}
2135  float const * GetSpecular () const { return m_specular.m_rgb; }
2137  char const * GetSpecularName () const { return m_specular.m_name; }
2139  char * GetSpecularName () { return m_specular.m_name; }
2140 
2142  void SetMirror (float r, float g, float b) { set_channel_rgb (m_mirror, r, g, b, TKO_Channel_Mirror); }
2144  void SetMirror (float const rgb[]) { SetMirror (rgb[0], rgb[1], rgb[2]); }
2146  void SetMirrorName (char const * name) { set_channel_name (m_mirror, name, TKO_Channel_Mirror); }
2148  void SetMirrorName (int length) { set_channel_name (m_mirror, length, TKO_Channel_Mirror); }
2150  float const * GetMirror () const { return m_mirror.m_rgb; }
2152  char const * GetMirrorName () const { return m_mirror.m_name; }
2154  char * GetMirrorName () { return m_mirror.m_name; }
2155 
2157  void SetTransmission (float r, float g, float b) { set_channel_rgb (m_transmission, r, g, b, TKO_Channel_Transmission); }
2159  void SetTransmission (float const rgb[]) { SetTransmission (rgb[0], rgb[1], rgb[2]); }
2161  void SetTransmissionName (char const * name) { set_channel_name (m_transmission, name, TKO_Channel_Transmission); }
2163  void SetTransmissionName (int length) { set_channel_name (m_transmission, length, TKO_Channel_Transmission); }
2165  float const * GetTransmission () const { return m_transmission.m_rgb; }
2167  char const * GetTransmissionName () const { return m_transmission.m_name; }
2169  char * GetTransmissionName () { return m_transmission.m_name; }
2170 
2172  void SetEmission (float r, float g, float b) { set_channel_rgb (m_emission, r, g, b, TKO_Channel_Emission);}
2174  void SetEmission (float const rgb[]) { SetEmission (rgb[0], rgb[1], rgb[2]); }
2176  void SetEmissionName (char const * name) { set_channel_name (m_emission, name, TKO_Channel_Emission); }
2178  void SetEmissionName (int length) { set_channel_name (m_emission, length, TKO_Channel_Emission);}
2180  float const * GetEmission () const { return m_emission.m_rgb; }
2182  char const * GetEmissionName () const { return m_emission.m_name; }
2184  char * GetEmissionName () { return m_emission.m_name; }
2185 
2187  void SetEnvironmentName (char const * name) { set_channel_name (m_environment, name, TKO_Channel_Environment); }
2189  void SetEnvironmentName (int length) { set_channel_name (m_environment, length, TKO_Channel_Environment); }
2191  char const * GetEnvironmentName () const { return m_environment.m_name; }
2193  char * GetEnvironmentName () { return m_environment.m_name; }
2194 
2196  void SetBumpName (char const * name) { set_channel_name (m_bump, name, TKO_Channel_Bump); }
2198  void SetBumpName (int length) { set_channel_name (m_bump, length, TKO_Channel_Bump); }
2200  char const * GetBumpName () const { return m_bump.m_name; }
2202  char * GetBumpName () { return m_bump.m_name; }
2203 
2205  void SetGloss (float g) { m_gloss = g; m_channels |= (1<<TKO_Channel_Gloss); }
2207  float GetGloss () const { return m_gloss; }
2209  void SetIndex (float i) { m_index = i; m_channels |= (1<<TKO_Channel_Index); }
2211  float GetIndex () const { return m_index; }
2212 };
2213 
2214 
2216 
2221 class BBINFILETK_API TK_Color_RGB : public BBaseOpcodeHandler {
2222  protected:
2223  int m_mask;
2224  float m_rgb[3];
2225 
2226  public:
2228  TK_Color_RGB () : BBaseOpcodeHandler (TKE_Color_RGB), m_mask (0) {}
2229 
2232  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
2233 
2234  TK_Status ReadAscii (BStreamFileToolkit & tk);
2235  TK_Status WriteAscii (BStreamFileToolkit & tk);
2236 
2241  void SetGeometry (int m) {
2242  m_mask = m & TKO_Geo_All_Colors;
2243  if ((m & TKO_Geo_Extended_Mask) != 0) {
2244  m_mask |= TKO_Geo_Extended;
2245  if ((m & TKO_Geo_Extended_Colors_Mask) != 0) {
2246  m_mask |= TKO_Geo_Extended_Colors;
2247  if ((m & TKO_Geo_Extended2_Mask) != 0)
2248  m_mask |= TKO_Geo_Extended2;
2249  }
2250  }
2251  }
2256  int GetGeometry () const { return m_mask; }
2257 
2259  void SetRGB (float r, float g, float b) { m_rgb[0] = r; m_rgb[1] = g; m_rgb[2] = b; }
2261  void SetRGB (float const rgb[]) { SetRGB (rgb[0], rgb[1], rgb[2]); }
2263  float const * GetRGB () const { return m_rgb; }
2264 };
2265 
2266 
2268 
2273 class BBINFILETK_API TK_Color_By_Value : public BBaseOpcodeHandler {
2274  protected:
2275  int m_mask;
2276  float m_value[3];
2277  char m_space;
2278 
2279  public:
2281  TK_Color_By_Value () : BBaseOpcodeHandler (TKE_Color_By_Value), m_mask (0) {}
2282 
2285  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
2286 
2287  TK_Status ReadAscii (BStreamFileToolkit & tk);
2288  TK_Status WriteAscii (BStreamFileToolkit & tk);
2289 
2294  void SetGeometry (int m) {
2295  m_mask = m & TKO_Geo_All_Colors;
2296  if ((m & TKO_Geo_Extended_Mask) != 0) {
2297  m_mask |= TKO_Geo_Extended;
2298  if ((m & TKO_Geo_Extended_Colors_Mask) != 0) {
2299  m_mask |= TKO_Geo_Extended_Colors;
2300  if ((m & TKO_Geo_Extended2_Mask) != 0)
2301  m_mask |= TKO_Geo_Extended2;
2302  }
2303  }
2304  }
2309  int GetGeometry () const { return m_mask; }
2310 
2312  void SetSpace (int s) { m_space = (char)s; }
2314  int GetSpace () const { return (int)m_space; }
2315 
2317  void SetValue (float a, float b, float c) {
2318  m_value[0] = a; m_value[1] = b; m_value[2] = c;
2319  }
2321  void SetValue (float const triple[]) { SetValue (triple[0], triple[1], triple[2]); }
2323  float const * GetValue () const { return m_value; }
2324 };
2325 
2326 
2328 
2334 class BBINFILETK_API TK_Color_By_Index : public BBaseOpcodeHandler {
2335  protected:
2336  int m_mask;
2337  int m_index;
2338 
2339  public:
2341  TK_Color_By_Index (unsigned char opcode) : BBaseOpcodeHandler (opcode), m_mask (0), m_index (-1) {}
2342 
2345  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
2346 
2347  TK_Status ReadAscii (BStreamFileToolkit & tk);
2348  TK_Status WriteAscii (BStreamFileToolkit & tk);
2349 
2354  void SetGeometry (int m) {
2355  m_mask = m & TKO_Geo_All_Colors;
2356  if ((m & TKO_Geo_Extended_Mask) != 0) {
2357  m_mask |= TKO_Geo_Extended;
2358  if ((m & TKO_Geo_Extended_Colors_Mask) != 0) {
2359  m_mask |= TKO_Geo_Extended_Colors;
2360  if ((m & TKO_Geo_Extended2_Mask) != 0)
2361  m_mask |= TKO_Geo_Extended2;
2362  }
2363  }
2364  }
2369  int GetGeometry () const { return m_mask; }
2370 
2372  void SetIndex (int i) { m_index = i; }
2374  int GetIndex () const { return m_index; }
2375 };
2376 
2378 
2383 class BBINFILETK_API TK_Color_By_FIndex : public BBaseOpcodeHandler {
2384  protected:
2385  int m_mask;
2386  float m_index;
2387 
2388  public:
2390  TK_Color_By_FIndex () : BBaseOpcodeHandler (TKE_Color_By_FIndex), m_mask (0), m_index (-1.0f) {}
2391 
2394  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
2395 
2396  TK_Status ReadAscii (BStreamFileToolkit & tk);
2397  TK_Status WriteAscii (BStreamFileToolkit & tk);
2398 
2403  void SetGeometry (int m) {
2404  m_mask = m & TKO_Geo_All_Colors;
2405  if ((m & TKO_Geo_Extended_Mask) != 0) {
2406  m_mask |= TKO_Geo_Extended;
2407  if ((m & TKO_Geo_Extended_Colors_Mask) != 0) {
2408  m_mask |= TKO_Geo_Extended_Colors;
2409  if ((m & TKO_Geo_Extended2_Mask) != 0)
2410  m_mask |= TKO_Geo_Extended2;
2411  }
2412  }
2413  }
2418  int GetGeometry () const { return m_mask; }
2419 
2421  void SetIndex (float val) { m_index = val; }
2423  float GetIndex () const { return m_index; }
2424 };
2425 
2432 };
2433 
2436 
2441 class BBINFILETK_API TK_Color_Map : public BBaseOpcodeHandler {
2442  protected:
2443  int m_length;
2445  float * m_values;
2447  char * m_string;
2448  unsigned char m_format;
2449 
2451  void set_values (int length, float const values[] = 0);
2452 
2453  public:
2456  : BBaseOpcodeHandler (TKE_Color_Map), m_length (0), m_values_length (0), m_values (0), m_string_length (0), m_string (0), m_format (TKO_Map_RGB_Values) {}
2457  ~TK_Color_Map();
2458 
2461  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
2462 
2463  TK_Status ReadAscii (BStreamFileToolkit & tk);
2464  TK_Status WriteAscii (BStreamFileToolkit & tk);
2465 
2466  void Reset ();
2467 
2469  void SetFormat (int f) { m_format = (unsigned char)f; }
2471  int GetFormat () const { return (int)m_format; }
2472 
2477  void SetValues (int count, float const values[] = 0) { set_values (count, values); }
2479  float const * GetValues () const { return m_values; }
2481  float * GetValues () { return m_values; }
2483  int GetLength () const { return m_length; }
2484 
2489  void SetString (char const * string);
2494  void SetString (int length);
2498  char const * GetString () const { return m_string; }
2503  char * GetString () { return m_string; }
2504 };
2505 
2507 
2510 
2516 class BBINFILETK_API TK_Callback : public BBaseOpcodeHandler {
2517  protected:
2518  int m_length;
2519  char * m_string;
2522  void set_callback (char const * callback);
2523 
2524  void set_callback (int length);
2525 
2526  public:
2528  TK_Callback () : BBaseOpcodeHandler (TKE_Callback), m_length (0), m_string (0) {}
2529  ~TK_Callback();
2530 
2533  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
2534 
2535  TK_Status ReadAscii (BStreamFileToolkit & tk);
2536  TK_Status WriteAscii (BStreamFileToolkit & tk);
2537 
2538  void Reset ();
2539 
2541  void SetCallback (char const * callback) { set_callback (callback); }
2543  void SetCallback (int length) { set_callback (length); }
2545  char const * GetCallback () const { return m_string; }
2547  char * GetCallback () { return m_string; }
2548 };
2549 
2551 
2552 
2564  TKO_Interp_Texture = 0x00000007,
2565 
2566  TKO_Interp_Color_Faces = 0x00000008,
2567  TKO_Interp_Color_Edges = 0x00000010,
2569  TKO_Interp_Color = 0x00000038,
2570 
2571  TKO_Interp_Index_Faces = 0x00000040,
2572  TKO_Interp_Index_Edges = 0x00000080,
2573  TKO_Interp_Index_FE = 0x000000C0,
2574 
2583  TKO_Interp_Lighting = 0x00000F00,
2584 
2587  TKO_Rendo_Any_HSR = 0x00003000,
2588 
2589  TKO_Rendo_Local_Viewer = 0x00004000,
2592 
2593  TKO_Rendo_Debug = 0x00020000,
2594 
2595  TKO_Rendo_Technology = 0x00040000,
2596  TKO_Rendo_Quantization = 0x00080000,
2597  TKO_Rendo_TQ = 0x000C0000,
2598 
2600 
2602  TKO_Rendo_Fog = 0x00400000,
2603 
2606 
2607  TKO_Rendo_LOD = 0x02000000,
2608  TKO_Rendo_LOD_Options = 0x04000000,
2609 
2613 
2614  TKO_Rendo_Stereo = 0x20000000,
2616 
2617 // hpux doesn't like the high bit set as part of the enumerated type
2618  //TKO_Rendo_Extended = 0x80000000,
2619 #ifndef SWIG
2620 #define TKO_Rendo_Extended 0x80000000
2621 #else
2622  TKO_Rendo_Extended = 0x8000000,
2623 #endif
2624 
2625  // extended settings
2626  TKO_Rendo_Tessellation = 0x00000001,
2629  TKO_Rendo_Cut_Geometry = 0x00000008,
2630  TKO_Rendo_Depth_Range = 0x00000010,
2632  TKO_Rendo_Image_Scale = 0x00000040,
2636  TKO_Rendo_Image_Tint = 0x00000400,
2642  TKO_Rendo_Screen_Range = 0x00010000,
2644  TKO_Rendo_Shadow_Map = 0x00040000,
2649  TKO_Rendo_Antialias = 0x00800000,
2658 
2659 #ifndef SWIG
2660 #define TKO_Rendo_Extended2 0x80000000
2661 #else
2662  TKO_Rendo_Extended2 = 0x8000000,
2663 #endif
2664 
2665  // more extended settings
2666  TKO_Rendo_Forced_Lock = 0x00000001,
2676 
2677  // type for specific fields
2688  TKO_HSR_Mask = 0x0F,
2689  TKO_THSR_Mask = 0xF0,
2690 
2693 
2706 
2707 
2718 
2722 
2730  TKO_Simple_Shadow_Extended = 0x0080, // internal use, indicates presence of extended bits
2731  TKO_Simple_Shadow_Extended_Mask = 0xFF00, // internal use, indicates bits which require TKO_Simple_Shadow_Extended
2732  TKO_Simple_Shadow_Extended_Shift = 8, // internal use, shift of extended section
2737  TKO_Simple_Shadow_Extended2 = 0x8000, // reserved for future expansion
2738 
2745  TKO_Shadow_Map_Extended = 0x0080, // indicates presence of extended bits
2748  TKO_Shadow_Map_Extended_Mask = 0xFF00, // mask of bits requiring extended
2749  TKO_Shadow_Map_Extended2 = 0x8000, // reserved for future expansion
2750 
2763  TKO_Simple_Reflection_Extended2 = 0x8000, // reserved for future expansion
2764 
2765  TKO_Mask_None = 0x0000,
2773  TKO_Mask_Camera = 0x000F,
2774  TKO_Mask_Model = 0x0070,
2775  TKO_Mask_All = 0x007F,
2782 
2788 
2793 
2798 
2807 
2823  TKO_Hidden_Line_Color = 0x00010000,
2824  TKO_Hidden_Line_Weight = 0x00020000,
2833 
2840 
2844 
2851 
2855 
2856  TKO_Tint_On = 0x0001,
2857  TKO_Tint_Off = 0x0002,
2858  TKO_Tint_Range = 0x0004,
2859  TKO_Tint_Color = 0x0008,
2860  TKO_Tint_Effect = 0x0010,
2861 
2866 
2868  TKO_LOD_Screen_Space = 0x00000002,
2869  TKO_LOD_Physical = 0x00000004,
2870  TKO_LOD_Tolerance_FRU = 0x00000008,
2871  TKO_LOD_Tolerance_ORU = 0x00000010,
2872  TKO_LOD_Preprocess = 0x00000020,
2875  TKO_LOD_Ratio = 0x00000100,
2876  TKO_LOD_Threshold = 0x00000200,
2878  TKO_LOD_Clamp = 0x00000800,
2879  TKO_LOD_Num_Levels = 0x00001000,
2880  TKO_LOD_Max_Degree = 0x00002000,
2881  TKO_LOD_Tolerance = 0x00004000,
2884  TKO_LOD_Fallback = 0x00020000,
2886  TKO_LOD_Algorithm = 0x00080000,
2887  TKO_LOD_Mode_Segment = 0x00100000,
2888 
2893 
2896 
2902 
2911 
2918 
2928 
2932 
2935  = 0x0200,
2937  = 0x0400,
2938 
2941 
2944 
2953 };
2954 
2955 
2956 #if 0
2957 class BBINFILETK_API TK_Radiosity_RayTrace_Options : public BBaseOpcodeHandler {
2958  protected:
2959 
2960  public:
2961  TK_Radiosity_RayTrace_Options () : BBaseOpcodeHandler (TKE_Radiosity_RayTrace_Options) {}
2962  ~TK_Radiosity_RayTrace_Options () {}
2963 
2966 
2967  TK_Status ReadAscii (BStreamFileToolkit & tk);
2968  TK_Status WriteAscii (BStreamFileToolkit & tk);
2969 };
2970 #endif
2971 
2972 
2974 
2980 class BBINFILETK_API TK_Rendering_Options : public BBaseOpcodeHandler {
2981  protected:
2982  int m_mask[3];
2983  int m_value[3];
2984 
2985  unsigned char m_hsr;
2986  unsigned char m_tq;
2987  int m_debug;
2990 
2991  float m_fog_limits[2];
2992 
2995 
2996  unsigned char m_buffer_options_mask;
2997  unsigned char m_buffer_options_value;
2999 
3005  float m_hlr_color[3];
3007  unsigned char m_hlr_weight_units;
3008  unsigned char m_hlr_hsr_algorithm;
3009 
3010  unsigned short m_contour_options;
3011  unsigned short m_isoline_options;
3024  unsigned char * m_isoline_weights_unit;
3025 
3026  unsigned short m_tint_options;
3027  float m_tint_color[3];
3028  float m_tint_range[2];
3030 
3035  float m_ratio[8];
3037  float m_threshold[8];
3040  unsigned char m_clamp;
3041  unsigned char m_num_levels;
3043  float m_tolerance;
3044  float m_bounding[6];
3046  float m_cutoff[8];
3047  unsigned char m_heuristic;
3048  unsigned char m_fallback;
3049 
3063 
3066 
3067  unsigned char m_tessellations;
3069  char m_cylinder[8];
3071  char m_sphere[8];
3072 
3073  float m_gooch_color_range[2];
3077  unsigned short m_transparency_options;
3078 
3079  unsigned char m_cut_geometry;
3080  unsigned char m_cut_geometry_level;
3081  unsigned char m_cut_geometry_match;
3083 
3084  unsigned short m_simple_shadow;
3085  unsigned char m_simple_shadow_blur;
3087  float m_simple_shadow_plane[4];
3088  float m_simple_shadow_light[3];
3089  float m_simple_shadow_color[3];
3090  float m_simple_shadow_opacity;
3091 
3092  unsigned short m_shadow_map;
3093  unsigned short m_shadow_map_resolution;
3094  unsigned char m_shadow_map_samples;
3095 
3096  unsigned short m_simple_reflection;
3097  float m_simple_reflection_plane[4];
3104 
3105  float m_depth_range[2];
3106  float m_screen_range[4];
3107  float m_ambient_up_vector[3];
3108  float m_image_scale[2];
3109  unsigned short m_mask_transform;
3110 
3111  unsigned char m_geometry_options;
3112  float m_dihedral;
3113 
3114  float m_image_tint_color[3];
3115  float m_texture_tint_color[3];
3116  unsigned char m_depth_peeling_layers;
3119 
3124  unsigned char m_display_list_level;
3125  unsigned char m_antialias;
3126 
3127  int m_extra;
3128 
3129 #if 0
3130  TK_Radiosity_RayTrace_Options *m_rrt;
3131 #endif
3132 
3133  public:
3137 
3140  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
3141 
3142  TK_Status ReadAscii (BStreamFileToolkit & tk);
3143  TK_Status WriteAscii (BStreamFileToolkit & tk);
3144 
3145  void Reset ();
3146 
3148  void SetMask (int m0, int m1=0, int m2=0) {
3149  m_mask[0] = m0;
3150  m_mask[1] = m1;
3151  m_mask[2] = m2;
3152  if (m2 != 0)
3153  m_mask[1] |= TKO_Rendo_Extended;
3154  if (m1 != 0)
3155  m_mask[0] |= TKO_Rendo_Extended;
3156  }
3158  int GetMask (int index=0) const { return m_mask[index]; }
3159 
3161  void SetValue (int v0, int v1=0, int v2=0) { m_value[0] = v0; m_value[1] = v1; m_value[2] = v2; }
3163  int GetValue (int index=0) const { return m_value[index]; }
3164 
3166  void SetHSR (int h) { m_hsr &= 0xF0; m_hsr |= (unsigned char)h & 0x0F; }
3168  int GetHSR () const { return (int)(m_hsr & 0x0F); }
3169 
3171  void SetTransparentHSR (int t) { m_hsr &= 0x0F; m_hsr |= (unsigned char)t << 4; }
3173  int GetTransparentHSR () const { return (int)(m_hsr >> 4); }
3174 
3176  void SetTransparentStyle (int s) { m_transparency_options = (unsigned short)s; }
3178  int GetTransparentStyle () const { return (int)m_transparency_options; }
3179 
3181  void SetTechnology (int t) { m_tq &= 0xF0; m_tq |= (unsigned char)t & 0x0F; }
3183  int GetTechnology () const { return (int)(m_tq & 0x0F); }
3184 
3186  void SetQuantization (int q) { m_tq &= 0x0F; m_tq |= (unsigned char)q << 4; }
3188  int GetQuantization () const { return (int)(m_tq >> 4); }
3189 
3191  void SetDebug (int d) { m_debug = d; }
3193  int GetDebug () const { return m_debug; }
3194 
3196  void SetFaceDisplacement (int d) { m_face_displacement = d; }
3198  int GetFaceDisplacement () const { return m_face_displacement; }
3199 
3201  void SetVertexDisplacement (int d) { m_vertex_displacement = d; }
3203  int GetVertexDisplacement () const { return m_vertex_displacement; }
3204 
3206  void SetGeneralDisplacement (int d) { m_general_displacement = d; }
3208  int GetGeneralDisplacement () const { return m_general_displacement; }
3209 
3211  void SetJoinCutoffAngle (int d) { m_join_cutoff_angle = d; }
3213  int GetJoinCutoffAngle () const { return m_join_cutoff_angle; }
3214 
3216  void SetFogLimits (float n, float f) { m_fog_limits[0] = n; m_fog_limits[1] = f; }
3218  void SetFogLimits (float const l[]) { SetFogLimits (l[0], l[1]); }
3220  float const * GetFogLimits () const { return m_fog_limits; }
3221 
3222 
3224  void SetLockMask (int m) { m_lock.mask = m; }
3226  int GetLockMask () const { return m_lock.mask; }
3227 
3229  void SetLockValue (int v) { m_lock.value = v; }
3231  int GetLockValue () const { return m_lock.value; }
3232 
3237  void SetVisibilityLockMask (int m) { m_lock.visibility_mask = m; }
3242  int GetVisibilityLockMask () const { return m_lock.visibility_mask; }
3243 
3248  void SetVisibilityLockValue (int v) { m_lock.visibility_value = v; }
3253  int GetVisibilityLockValue () const { return m_lock.visibility_value; }
3254 
3255 
3260  void SetColorLockMask (int m) { m_lock.color_mask = m; }
3265  int GetColorLockMask () const { return m_lock.color_mask; }
3266 
3271  void SetColorLockValue (int v) { m_lock.color_value = v; }
3276  int GetColorLockValue () const { return m_lock.color_value; }
3277 
3278 
3283  void SetColorFaceLockMask (int m) { m_lock.color_face_mask = (short)m; }
3288  int GetColorFaceLockMask () const { return m_lock.color_face_mask; }
3289 
3294  void SetColorFaceLockValue (int v) { m_lock.color_face_value = (short)v; }
3299  int GetColorFaceLockValue () const { return m_lock.color_face_value; }
3300 
3301 
3306  void SetColorEdgeLockMask (int m) { m_lock.color_edge_mask = (short)m; }
3311  int GetColorEdgeLockMask () const { return m_lock.color_edge_mask; }
3312 
3317  void SetColorEdgeLockValue (int v) { m_lock.color_edge_value = (short)v; }
3322  int GetColorEdgeLockValue () const { return m_lock.color_edge_value; }
3323 
3324 
3329  void SetColorLineLockMask (int m) { m_lock.color_line_mask = (short)m; }
3334  int GetColorLineLockMask () const { return m_lock.color_line_mask; }
3335 
3340  void SetColorLineLockValue (int v) { m_lock.color_line_value = (short)v; }
3345  int GetColorLineLockValue () const { return m_lock.color_line_value; }
3346 
3347 
3352  void SetColorMarkerLockMask (int m) { m_lock.color_marker_mask = (short)m; }
3357  int GetColorMarkerLockMask () const { return m_lock.color_marker_mask; }
3358 
3363  void SetColorMarkerLockValue (int v) { m_lock.color_marker_value = (short)v; }
3368  int GetColorMarkerLockValue () const { return m_lock.color_marker_value; }
3369 
3370 
3375  void SetColorTextLockMask (int m) { m_lock.color_text_mask = (short)m; }
3380  int GetColorTextLockMask () const { return m_lock.color_text_mask; }
3381 
3386  void SetColorTextLockValue (int v) { m_lock.color_text_value = (short)v; }
3391  int GetColorTextLockValue () const { return m_lock.color_text_value; }
3392 
3393 
3398  void SetColorWindowLockMask (int m) { m_lock.color_window_mask = (short)m; }
3403  int GetColorWindowLockMask () const { return m_lock.color_window_mask; }
3404 
3409  void SetColorWindowLockValue (int v) { m_lock.color_window_value = (short)v; }
3414  int GetColorWindowLockValue () const { return m_lock.color_window_value; }
3415 
3416 
3421  void SetColorFaceContrastLockMask (int m) { m_lock.color_face_contrast_mask = (short)m; }
3426  int GetColorFaceContrastLockMask () const { return m_lock.color_face_contrast_mask; }
3427 
3432  void SetColorFaceContrastLockValue (int v) { m_lock.color_face_contrast_value = (short)v; }
3437  int GetColorFaceContrastLockValue () const { return m_lock.color_face_contrast_value; }
3438 
3439 
3444  void SetColorWindowContrastLockMask (int m) { m_lock.color_window_contrast_mask = (short)m; }
3449  int GetColorWindowContrastLockMask () const { return m_lock.color_window_contrast_mask; }
3450 
3455  void SetColorWindowContrastLockValue (int v) { m_lock.color_window_contrast_value = (short)v; }
3460  int GetColorWindowContrastLockValue () const { return m_lock.color_window_contrast_value; }
3461 
3462 
3467  void SetColorBackLockMask (int m) { m_lock.color_back_mask = (short)m; }
3472  int GetColorBackLockMask () const { return m_lock.color_back_mask; }
3473 
3478  void SetColorBackLockValue (int v) { m_lock.color_back_value = (short)v; }
3483  int GetColorBackLockValue () const { return m_lock.color_back_value; }
3484 
3485 
3490  void SetColorVertexLockMask (int m) { m_lock.color_vertex_mask = (short)m; }
3495  int GetColorVertexLockMask () const { return m_lock.color_vertex_mask; }
3496 
3501  void SetColorVertexLockValue (int v) { m_lock.color_vertex_value = (short)v; }
3506  int GetColorVertexLockValue () const { return m_lock.color_vertex_value; }
3507 
3508 
3513  void SetColorEdgeContrastLockMask (int m) { m_lock.color_edge_contrast_mask = (short)m; }
3518  int GetColorEdgeContrastLockMask () const { return m_lock.color_edge_contrast_mask; }
3519 
3524  void SetColorEdgeContrastLockValue (int v) { m_lock.color_edge_contrast_value = (short)v; }
3529  int GetColorEdgeContrastLockValue () const { return m_lock.color_edge_contrast_value; }
3530 
3531 
3536  void SetColorLineContrastLockMask (int m) { m_lock.color_line_contrast_mask = (short)m; }
3541  int GetColorLineContrastLockMask () const { return m_lock.color_line_contrast_mask; }
3542 
3547  void SetColorLineContrastLockValue (int v) { m_lock.color_line_contrast_value = (short)v; }
3552  int GetColorLineContrastLockValue () const { return m_lock.color_line_contrast_value; }
3553 
3554 
3559  void SetColorMarkerContrastLockMask (int m) { m_lock.color_marker_contrast_mask = (short)m; }
3564  int GetColorMarkerContrastLockMask () const { return m_lock.color_marker_contrast_mask; }
3565 
3570  void SetColorMarkerContrastLockValue (int v) { m_lock.color_marker_contrast_value = (short)v; }
3575  int GetColorMarkerContrastLockValue () const { return m_lock.color_marker_contrast_value; }
3576 
3577 
3582  void SetColorVertexContrastLockMask (int m) { m_lock.color_vertex_contrast_mask = (short)m; }
3587  int GetColorVertexContrastLockMask () const { return m_lock.color_vertex_contrast_mask; }
3588 
3593  void SetColorVertexContrastLockValue (int v) { m_lock.color_vertex_contrast_value = (short)v; }
3598  int GetColorVertexContrastLockValue () const { return m_lock.color_vertex_contrast_value; }
3599 
3600 
3605  void SetColorTextContrastLockMask (int m) { m_lock.color_text_contrast_mask = (short)m; }
3610  int GetColorTextContrastLockMask () const { return m_lock.color_text_contrast_mask; }
3611 
3616  void SetColorTextContrastLockValue (int v) { m_lock.color_text_contrast_value = (short)v; }
3621  int GetColorTextContrastLockValue () const { return m_lock.color_text_contrast_value; }
3622 
3623 
3624 
3625 
3627  void SetForcedLockMask (int m) { m_forced.mask = m; }
3629  int GetForcedLockMask () const { return m_forced.mask; }
3630 
3632  void SetForcedLockValue (int v) { m_forced.value = v; }
3634  int GetForcedLockValue () const { return m_forced.value; }
3635 
3640  void SetVisibilityForcedLockMask (int m) { m_forced.visibility_mask = m; }
3645  int GetVisibilityForcedLockMask () const { return m_forced.visibility_mask; }
3646 
3651  void SetVisibilityForcedLockValue (int v) { m_forced.visibility_value = v; }
3656  int GetVisibilityForcedLockValue () const { return m_forced.visibility_value; }
3657 
3658 
3663  void SetColorForcedLockMask (int m) { m_forced.color_mask = m; }
3668  int GetColorForcedLockMask () const { return m_forced.color_mask; }
3669 
3674  void SetColorForcedLockValue (int v) { m_forced.color_value = v; }
3679  int GetColorForcedLockValue () const { return m_forced.color_value; }
3680 
3681 
3686  void SetColorFaceForcedLockMask (int m) { m_forced.color_face_mask = (short)m; }
3691  int GetColorFaceForcedLockMask () const { return m_forced.color_face_mask; }
3692 
3697  void SetColorFaceForcedLockValue (int v) { m_forced.color_face_value = (short)v; }
3702  int GetColorFaceForcedLockValue () const { return m_forced.color_face_value; }
3703 
3704 
3709  void SetColorEdgeForcedLockMask (int m) { m_forced.color_edge_mask = (short)m; }
3714  int GetColorEdgeForcedLockMask () const { return m_forced.color_edge_mask; }
3715 
3720  void SetColorEdgeForcedLockValue (int v) { m_forced.color_edge_value = (short)v; }
3725  int GetColorEdgeForcedLockValue () const { return m_forced.color_edge_value; }
3726 
3727 
3732  void SetColorLineForcedLockMask (int m) { m_forced.color_line_mask = (short)m; }
3737  int GetColorLineForcedLockMask () const { return m_forced.color_line_mask; }
3738 
3743  void SetColorLineForcedLockValue (int v) { m_forced.color_line_value = (short)v; }
3748  int GetColorLineForcedLockValue () const { return m_forced.color_line_value; }
3749 
3750 
3755  void SetColorMarkerForcedLockMask (int m) { m_forced.color_marker_mask = (short)m; }
3760  int GetColorMarkerForcedLockMask () const { return m_forced.color_marker_mask; }
3761 
3766  void SetColorMarkerForcedLockValue (int v) { m_forced.color_marker_value = (short)v; }
3771  int GetColorMarkerForcedLockValue () const { return m_forced.color_marker_value; }
3772 
3773 
3778  void SetColorTextForcedLockMask (int m) { m_forced.color_text_mask = (short)m; }
3783  int GetColorTextForcedLockMask () const { return m_forced.color_text_mask; }
3784 
3789  void SetColorTextForcedLockValue (int v) { m_forced.color_text_value = (short)v; }
3794  int GetColorTextForcedLockValue () const { return m_forced.color_text_value; }
3795 
3796 
3801  void SetColorWindowForcedLockMask (int m) { m_forced.color_window_mask = (short)m; }
3806  int GetColorWindowForcedLockMask () const { return m_forced.color_window_mask; }
3807 
3812  void SetColorWindowForcedLockValue (int v) { m_forced.color_window_value = (short)v; }
3817  int GetColorWindowForcedLockValue () const { return m_forced.color_window_value; }
3818 
3819 
3824  void SetColorFaceContrastForcedLockMask (int m) { m_forced.color_face_contrast_mask = (short)m; }
3829  int GetColorFaceContrastForcedLockMask () const { return m_forced.color_face_contrast_mask; }
3830 
3835  void SetColorFaceContrastForcedLockValue (int v) { m_forced.color_face_contrast_value = (short)v; }
3840  int GetColorFaceContrastForcedLockValue () const { return m_forced.color_face_contrast_value; }
3841 
3842 
3847  void SetColorWindowContrastForcedLockMask (int m) { m_forced.color_window_contrast_mask = (short)m; }
3852  int GetColorWindowContrastForcedLockMask () const { return m_forced.color_window_contrast_mask; }
3853 
3858  void SetColorWindowContrastForcedLockValue (int v) { m_forced.color_window_contrast_value = (short)v; }
3863  int GetColorWindowContrastForcedLockValue () const { return m_forced.color_window_contrast_value; }
3864 
3865 
3870  void SetColorBackForcedLockMask (int m) { m_forced.color_back_mask = (short)m; }
3875  int GetColorBackForcedLockMask () const { return m_forced.color_back_mask; }
3876 
3881  void SetColorBackForcedLockValue (int v) { m_forced.color_back_value = (short)v; }
3886  int GetColorBackForcedLockValue () const { return m_forced.color_back_value; }
3887 
3888 
3893  void SetColorVertexForcedLockMask (int m) { m_forced.color_vertex_mask = (short)m; }
3898  int GetColorVertexForcedLockMask () const { return m_forced.color_vertex_mask; }
3899 
3904  void SetColorVertexForcedLockValue (int v) { m_forced.color_vertex_value = (short)v; }
3909  int GetColorVertexForcedLockValue () const { return m_forced.color_vertex_value; }
3910 
3911 
3916  void SetColorEdgeContrastForcedLockMask (int m) { m_forced.color_edge_contrast_mask = (short)m; }
3921  int GetColorEdgeContrastForcedLockMask () const { return m_forced.color_edge_contrast_mask; }
3922 
3927  void SetColorEdgeContrastForcedLockValue (int v) { m_forced.color_edge_contrast_value = (short)v; }
3932  int GetColorEdgeContrastForcedLockValue () const { return m_forced.color_edge_contrast_value; }
3933 
3934 
3939  void SetColorLineContrastForcedLockMask (int m) { m_forced.color_line_contrast_mask = (short)m; }
3944  int GetColorLineContrastForcedLockMask () const { return m_forced.color_line_contrast_mask; }
3945 
3950  void SetColorLineContrastForcedLockValue (int v) { m_forced.color_line_contrast_value = (short)v; }
3955  int GetColorLineContrastForcedLockValue () const { return m_forced.color_line_contrast_value; }
3956 
3957 
3962  void SetColorMarkerContrastForcedLockMask (int m) { m_forced.color_marker_contrast_mask = (short)m; }
3967  int GetColorMarkerContrastForcedLockMask () const { return m_forced.color_marker_contrast_mask; }
3968 
3973  void SetColorMarkerContrastForcedLockValue (int v) { m_forced.color_marker_contrast_value = (short)v; }
3978  int GetColorMarkerContrastForcedLockValue () const { return m_forced.color_marker_contrast_value; }
3979 
3980 
3985  void SetColorVertexContrastForcedLockMask (int m) { m_forced.color_vertex_contrast_mask = (short)m; }
3990  int GetColorVertexContrastForcedLockMask () const { return m_forced.color_vertex_contrast_mask; }
3991 
3996  void SetColorVertexContrastForcedLockValue (int v) { m_forced.color_vertex_contrast_value = (short)v; }
4001  int GetColorVertexContrastForcedLockValue () const { return m_forced.color_vertex_contrast_value; }
4002 
4003 
4008  void SetColorTextContrastForcedLockMask (int m) { m_forced.color_text_contrast_mask = (short)m; }
4013  int GetColorTextContrastForcedLockMask () const { return m_forced.color_text_contrast_mask; }
4014 
4019  void SetColorTextContrastForcedLockValue (int v) { m_forced.color_text_contrast_value = (short)v; }
4024  int GetColorTextContrastForcedLockValue () const { return m_forced.color_text_contrast_value; }
4025 
4026 
4027 
4028 
4030  void SetBufferOptionsMask (int v) { m_buffer_options_mask = (unsigned char)v; }
4032  int GetBufferOptionsMask () const { return m_buffer_options_mask; }
4034  void SetBufferOptionsValue (int v) { m_buffer_options_value = (unsigned char) v; }
4036  int GetBufferOptionsValue () const { return m_buffer_options_value; }
4038  void SetBufferSizeLimit (int l) { m_buffer_size_limit = l; }
4040  int GetBufferSizeLimit () const { return m_buffer_size_limit; }
4041 
4042 
4044  void SetStereoSeparation (float s) { m_stereo_separation = s; }
4046  float GetStereoSeparation () const { return m_stereo_separation; }
4048  void SetStereoDistance (float d) { m_stereo_distance = d; }
4050  float GetStereoDistance () const { return m_stereo_distance; }
4051 
4052 
4054  void SetHlrOptions (int o) {
4055  m_hlr_options = o;
4056  if ((o & TKO_Hidden_Line_Extended_Mask) != 0) {
4057  m_hlr_options |= TKO_Hidden_Line_Extended;
4058  if ((o & TKO_Hidden_Line_Extended2_Mask) != 0)
4059  m_hlr_options |= TKO_Hidden_Line_Extended2;
4060  }
4061  }
4063  int GetHlrOptions () const { return m_hlr_options; }
4065  void SetHlrDimFactor (float d) { m_hlr_dim_factor = d; }
4067  float GetHlrDimFactor () const { return m_hlr_dim_factor; }
4069  void SetHlrFaceDisplacement (float d) { m_hlr_face_displacement = d; }
4071  float GetHlrFaceDisplacement () const { return m_hlr_face_displacement; }
4073  void SetHlrLinePattern (int p) { m_hlr_line_pattern = p; }
4075  int GetHlrLinePattern () const { return m_hlr_line_pattern; }
4077  void SetHlrFaceSortingAlgorithm (int a) { m_hlr_hsr_algorithm = (unsigned char)a; }
4079  float GetHlrFaceSortingAlgorithm () const { return m_hlr_hsr_algorithm; }
4080 
4081 
4083  void SetNURBSOptionsMask (int m) {
4084  m_nurbs_options_mask = m;
4085  if ((m & TKO_NURBS_Extended_Mask) != 0)
4086  m_nurbs_options_mask |= TKO_NURBS_Extended;
4087  }
4089  int GetNURBSOptionsMask () const { return m_nurbs_options_mask; }
4091  void SetNURBSOptionsValue (int v) { m_nurbs_options_value = v; }
4093  int GetNURBSOptionsValue () const { return m_nurbs_options_value; }
4095  void SetNURBSCurveBudget (int b) { m_curve_budget = b; }
4097  int GetNURBSCurveBudget () const { return m_curve_budget; }
4099  void SetNURBSCurveContinuedBudget (int b) { m_curve_continued_budget = b; }
4101  int GetNURBSCurveContinuedBudget () const { return m_curve_continued_budget; }
4103  void SetNURBSSurfaceBudget (int b) { m_surface_budget = b; }
4105  int GetNURBSSurfaceBudget () const { return m_surface_budget; }
4107  void SetNURBSSurfaceTrimBudget (int b) { m_surface_trim_budget = b; }
4109  int GetNURBSSurfaceTrimBudget () const { return m_surface_trim_budget; }
4110 
4111 
4113  void SetLodOptionsMask (int v) { m_lod_options_mask = v; }
4115  int GetLodOptionsMask () const { return m_lod_options_mask; }
4117  void SetLodOptionsValue (int v) { m_lod_options_value = v; }
4119  int GetLodOptionsValue () const { return m_lod_options_value; }
4121  void SetLodAlgorithm (int v) { m_lod_algorithm = (char)v; }
4123  int GetLodAlgorithm () const { return m_lod_algorithm; }
4125  void SetLodMinimumTriangleCount (int v) { m_min_triangle_count = v; }
4127  int GetLodMinimumTriangleCount () const { return m_min_triangle_count; }
4129  void SetLodNumLevels (int v) { m_num_levels = (unsigned char)v; }
4131  int GetLodNumLevels () const { return m_num_levels; }
4133  void SetLodClamp (int v) { m_clamp = (unsigned char)v; }
4135  int GetLodClamp () const { return m_clamp; }
4137  void SetLodMaxDegree (int v) { m_max_degree = v; }
4139  int GetLodMaxDegree () const { return m_max_degree; }
4141  void SetLodTolerance (float v) { m_tolerance = v; }
4143  float GetLodTolerance () const { return m_tolerance; }
4145  void SetLodFallback (int v) { m_fallback = (char)v; }
4147  int GetLodFallback () const { return m_fallback; }
4148 
4150  void SetLodBounding (float x1, float y1, float z1, float x2, float y2, float z2) {
4151  m_bounding[0] = x1; m_bounding[1] = y1; m_bounding[2] = z1;
4152  m_bounding[3] = x2; m_bounding[4] = y2; m_bounding[5] = z2;
4153  }
4155  void SetLodBounding (float const s[], float const e[]) {
4156  SetLodBounding (s[0], s[1], s[2], e[0], e[1], e[2]);
4157  }
4159  void SetLodBounding (float const p[]) { SetLodBounding (&p[0], &p[3]); }
4161  float const * GetLodBounding () const { return m_bounding; }
4162 
4164  void SetLodRatio (float r) { m_num_ratios = 1; m_ratio[0] = r; }
4166  void SetLodRatios (int c, float const r[] = 0) {
4167  m_num_ratios = (char)c;
4168  if (r != 0) {
4169  int i;
4170  for (i=0; i<c; ++i)
4171  m_ratio[i] = r[i];
4172  }
4173  }
4175  int GetLodNumRatios () const { return m_num_ratios; }
4177  float const * GetLodRatios () const { return m_ratio; }
4179  float * GetLodRatios () { return m_ratio; }
4180 
4182  void SetLodThresholdType (int v) { m_threshold_type = (char)v; }
4184  int GetLodThresholdType () const { return m_threshold_type; }
4186  void SetLodThreshold (float r) { m_num_thresholds = 1; m_threshold[0] = r; }
4188  void SetLodThresholds (int c, float const r[] = 0) {
4189  m_num_thresholds = (char)c;
4190  if (r != 0) {
4191  int i;
4192  for (i=0; i<c; ++i)
4193  m_threshold[i] = r[i];
4194  }
4195  }
4197  int GetLodNumThresholds () const { return m_num_thresholds; }
4199  float const * GetLodThresholds () const { return m_threshold; }
4201  float * GetLodThresholds () { return m_threshold; }
4202 
4204  void SetLodCutoff (float r) { m_num_cutoffs = 1; m_cutoff[0] = r; }
4206  void SetLodCutoffs (int c, float const r[] = 0) {
4207  m_num_cutoffs = (char)c;
4208  if (r != 0) {
4209  int i;
4210  for (i=0; i<c; ++i)
4211  m_cutoff[i] = r[i];
4212  }
4213  }
4215  int GetLodNumCutoffs () const { return m_num_cutoffs; }
4217  float const * GetLodCutoffs () const { return m_cutoff; }
4219  float * GetLodCutoffs () { return m_cutoff; }
4220 
4221 
4223  void SetTessellationMask (int m) { m_tessellations = (unsigned char)m; }
4225  int GetTessellationMask () const { return m_tessellations; }
4227  void SetCylinderTessellation (int n) { m_num_cylinder = (char)1; m_cylinder[0] = (char)n; }
4229  void SetCylinderTessellations (int c, char const * n = 0) {
4230  m_num_cylinder = (char)c;
4231  if (n != 0) {
4232  int i;
4233  for (i=0; i<c; ++i)
4234  m_cylinder[i] = n[i];
4235  }
4236  }
4238  int GetNumCylinderTessellations () const { return m_num_cylinder; }
4240  char const * GetCylinderTessellations () const { return m_cylinder; }
4242  char * GetCylinderTessellations () { return m_cylinder; }
4244  void SetSphereTessellation (int n) { m_num_sphere = (char)1; m_sphere[0] = (char)n; }
4246  void SetSphereTessellations (int c, char const * n = 0) {
4247  m_num_sphere = (char)c;
4248  if (n != 0) {
4249  int i;
4250  for (i=0; i<c; ++i)
4251  m_sphere[i] = n[i];
4252  }
4253  }
4255  int GetNumSphereTessellations () const { return m_num_sphere; }
4257  char const * GetSphereTessellations () const { return m_sphere; }
4259  char * GetSphereTessellations () { return m_sphere; }
4260 
4262  void SetGeometryOptionsMask (int m) { m_geometry_options = (unsigned char)m; }
4264  int GetGeometryOptionsMask () const { return m_geometry_options; }
4265 
4267  void SetHardEdgeAngle (int m) { m_dihedral = (unsigned char)m; }
4269  float GetHardEdgeAngle () const { return m_dihedral; }
4270 
4272  void SetMaskTransform (int m) { m_mask_transform = (unsigned short)m; }
4274  int GetMaskTransform () const { return (int)m_mask_transform; }
4275 
4276 
4278  void SetCutGeometry (int m) { m_cut_geometry = (unsigned char)m; }
4280  int GetCutGeometry () const { return (int)m_cut_geometry; }
4281 
4283  void SetCutGeometryLevel (int m) { m_cut_geometry_level = (unsigned char)m; }
4285  int GetCutGeometryLevel () const { return (int)m_cut_geometry_level; }
4286 
4288  void SetCutGeometryColorMatch (int m) { m_cut_geometry_match = (unsigned char)m; }
4290  int GetCutGeometryColorMatch () const { return (int)m_cut_geometry_match; }
4291 
4293  void SetCutGeometryTolerance (float m) { m_cut_geometry_tolerance = m; }
4295  float GetCutGeometryTolerance () const { return m_cut_geometry_tolerance; }
4296 
4297 
4299  void SetDisplayListLevel (int m) { m_display_list_level = (unsigned char)m; }
4301  int GetDisplayListLevel () const { return (int)m_display_list_level; }
4302 
4304  void SetSimpleShadow (int m) {
4305  m_simple_shadow = (unsigned short)m;
4306  if ((m & TKO_Simple_Shadow_Extended_Mask) != 0)
4307  m_simple_shadow |= TKO_Simple_Shadow_Extended;
4308  }
4310  int GetSimpleShadow () const { return (int)m_simple_shadow; }
4311 
4313  void SetSimpleShadowBlur (int m) { m_simple_shadow_blur = (unsigned char)m; }
4315  int GetSimpleShadowBlur () const { return (int)m_simple_shadow_blur; }
4316 
4318  void SetSimpleShadowResolution (int m) { m_simple_shadow_resolution = (unsigned short)m; }
4320  int GetSimpleShadowResolution () const { return (int)m_simple_shadow_resolution; }
4321 
4323  void SetSimpleShadowLight (float x, float y, float z) {
4324  m_simple_shadow_light[0] = x;
4325  m_simple_shadow_light[1] = y;
4326  m_simple_shadow_light[2] = z;
4327  }
4329  void SetSimpleShadowLight (float const l[]) { SetSimpleShadowLight (l[0], l[1], l[2]); }
4331  float const * getSimpleShadowLight () const { return m_simple_shadow_light; }
4332 
4334  void SetSimpleShadowPlane (float a, float b, float c, float d) {
4335  m_simple_shadow_plane[0] = a;
4336  m_simple_shadow_plane[1] = b;
4337  m_simple_shadow_plane[2] = c;
4338  m_simple_shadow_plane[3] = d;
4339  }
4341  void SetSimpleShadowPlane (float const p[]) { SetSimpleShadowPlane (p[0], p[1], p[2], p[3]); }
4343  float const * GetSimpleShadowPlane () const { return m_simple_shadow_plane; }
4344 
4346  void SetSimpleShadowColor (float r, float g, float b)
4347  { m_simple_shadow_color[0] = r; m_simple_shadow_color[1] = g; m_simple_shadow_color[2] = b; }
4349  void SetSimpleShadowColor (float const rgb[]) { SetSimpleShadowColor (rgb[0], rgb[1], rgb[2]); }
4351  float const * GetSimpleShadowColor () const { return m_simple_shadow_color; }
4352 
4354  void SetSimpleShadowOpacity (float o) { m_simple_shadow_opacity = o; }
4356  float GetSimpleShadowOpacity () const { return m_simple_shadow_opacity; }
4357 
4358 
4360  void SetShadowMap (int m) { m_shadow_map = (unsigned char)m; }
4362  int GetShadowMap () const { return (int)m_shadow_map; }
4363 
4365  void SetShadowMapResolution (int m) { m_shadow_map_resolution = (unsigned short)m; }
4367  int GetShadowMapResolution () const { return (int)m_shadow_map_resolution; }
4368 
4370  void SetShadowMapSamples (int m) { m_shadow_map_samples = (unsigned char)m; }
4372  int GetShadowMapSamples () const { return (int)m_shadow_map_samples; }
4373 
4374 
4376  void SetSimpleReflection (int m) { m_simple_reflection = (unsigned short)m; }
4378  int GetSimpleReflection () const { return (int)m_simple_reflection; }
4379 
4381  void SetSimpleReflectionPlane (float a, float b, float c, float d) {
4382  m_simple_reflection_plane[0] = a;
4383  m_simple_reflection_plane[1] = b;
4384  m_simple_reflection_plane[2] = c;
4385  m_simple_reflection_plane[3] = d;
4386  }
4388  void SetSimpleReflectionPlane (float const p[]) { SetSimpleReflectionPlane (p[0], p[1], p[2], p[3]); }
4390  float const * GetSimpleReflectionPlane () const { return m_simple_reflection_plane; }
4391 
4393  void SetSimpleReflectionOpacity (float o) { m_simple_reflection_opacity = o; }
4395  float GetSimpleReflectionOpacity () const { return m_simple_reflection_opacity; }
4396 
4398  void SetSimpleReflectionVisibilityMask (int m) { m_simple_reflection_visibility_mask = m; }
4400  int GetSimpleReflectionVisibilityValue () const { return m_simple_reflection_visibility_value; }
4401 
4402 
4404  void SetDepthRange (float n, float f) { m_depth_range[0] = n; m_depth_range[1] = f; }
4406  void SetDepthRange (float const l[]) { SetDepthRange (l[0], l[1]); }
4408  float const * GetDepthRange () const { return m_depth_range; }
4409 
4410 
4412  void SetScreenRange (float l, float r, float b, float t)
4413  { m_screen_range[0] = l; m_screen_range[1] = r; m_screen_range[2] = b; m_screen_range[3] = t; }
4415  void SetScreenRange (float const l[]) { SetScreenRange (l[0], l[1], l[2], l[3]); }
4417  float const * GetScreenRange () const { return m_screen_range; }
4418 
4422  void SetAmbientUpVector (float x, float y, float z)
4423  { m_ambient_up_vector[0] = x; m_ambient_up_vector[1] = y; m_ambient_up_vector[2] = z; }
4425  void SetAmbientUpVector (float const v[]) { SetAmbientUpVector (v[0], v[1], v[2]); }
4427  float const * GetAmbientUpVector () const { return m_ambient_up_vector; }
4428 
4430  void SetImageScale (float x, float y) { m_image_scale[0] = x; m_image_scale[1] = y; }
4432  void SetImageScale (float const s[]) { SetImageScale (s[0], s[1]); }
4434  float const * GetImageScale () const { return m_image_scale; }
4435 
4436 
4438  void SetImageTintColor (float r, float g, float b)
4439  { m_image_tint_color[0] = r; m_image_tint_color[1] = g; m_image_tint_color[2] = b; }
4441  void SetImageTintColor (float const rgb[]) { SetImageTintColor (rgb[0], rgb[1], rgb[2]); }
4443  float const * GetImageTintColor () const { return m_image_tint_color; }
4444 
4446  void SetDiffuseTextureTintColor (float r, float g, float b)
4447  { m_texture_tint_color[0] = r; m_texture_tint_color[1] = g; m_texture_tint_color[2] = b; }
4449  void SetDiffuseTextureTintColor (float const rgb[]) { SetDiffuseTextureTintColor (rgb[0], rgb[1], rgb[2]); }
4451  float const * GetDiffuseTextureTintColor () const { return m_texture_tint_color; }
4452 
4454  void SetAntiAlias (int m) { m_antialias = (unsigned char)m; }
4456  int GetAntiAlias () const { return (int)m_antialias; }
4457 
4459  void SetVertexDecimation (float f) { m_vertex_decimation = f; }
4461  float GetVertexDecimation () const { return m_vertex_decimation; }
4462 };
4463 
4465 
4478  TKO_Heuristic_Clipping = 0x00000100,
4485 
4486  TKO_Heuristic_Extended = 0x00008000,
4489 
4490  TKO_Heuristic_Culling = 0x00010000,
4498 
4500  TKO_Heuristic_Static = 0x02000000,
4504 
4507 
4510 
4538 
4539 
4544 
4550 
4558 
4562 
4565 };
4566 
4567 
4568 
4570 
4576 class BBINFILETK_API TK_Heuristics : public BBaseOpcodeHandler {
4577  protected:
4578  int m_mask;
4579  int m_value;
4580 
4584 
4585  unsigned char m_extras;
4594  float m_vector[3];
4597  float m_view_volume[6];
4598 
4599  unsigned char m_ordered_weights_mask;
4600  float m_ordered_weights[TKO_Heur_Order_Count];
4601  unsigned char m_selection_level;
4602  unsigned char m_model_type;
4603 
4604  public:
4606  TK_Heuristics () : BBaseOpcodeHandler (TKE_Heuristics),
4607  m_mask (0), m_value (0), m_culling(0), m_selection_culling(0), m_pixel_threshold (0),
4608  m_maximum_extent (0), m_maximum_extent_mode(0) {}
4609  ~TK_Heuristics ();
4610 
4613  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
4614 
4615  TK_Status ReadAscii (BStreamFileToolkit & tk);
4616  TK_Status WriteAscii (BStreamFileToolkit & tk);
4617 
4619  void SetMask (int m) {
4620  m_mask = m;
4621  if ((m & TKO_Heuristic_Extended_Mask) != 0)
4622  m_mask |= TKO_Heuristic_Extended;
4623  }
4625  int GetMask () const { return m_mask; }
4626 
4628  void SetValue (int v) { m_value = v; }
4630  int GetValue () const { return m_value; }
4631 
4633  void SetRelatedSelectionLimit (int r) { m_related = r; }
4635  int GetRelatedSelectionLimit () const { return m_related; }
4636 
4638  void SetInternalSelectionLimit (int i) { m_internal_shell = m_internal_polyline = i; }
4640  int GetInternalSelectionLimit () const { return m_internal_shell; }
4641 
4643  void SetInternalShellSelectionLimit (int i) { m_internal_shell = i; }
4645  int GetInternalShellSelectionLimit () const { return m_internal_shell; }
4646 
4648  void SetInternalPolylineSelectionLimit (int i) { m_internal_polyline = i; }
4650  int GetInternalPolylineSelectionLimit () const { return m_internal_polyline; }
4651 
4653  void SetExtras (int e) { m_extras = (unsigned char)e; }
4655  int GetExtras () const { return (int)m_extras; }
4656 
4658  void SetCulling (int c) { m_culling = (unsigned short)c; }
4660  int GetCulling () const { return (int)m_culling; }
4662  void SetSelectionCulling (int c) { m_selection_culling = (unsigned short)c; }
4664  int GetSelectionCulling () const { return (int)m_selection_culling; }
4666  void SetPixelThreshold (int c) { m_pixel_threshold = c; }
4668  int GetPixelThreshold () const { return m_pixel_threshold; }
4670  void SetMaximumExtent (int c) { m_maximum_extent = c; }
4672  int GetMaximumExtent () const { return m_maximum_extent; }
4674  int GetMaximumExtentMode () const { return m_maximum_extent_mode; }
4676  void SetMaximumExtentMode (int c) { m_maximum_extent_mode = c; }
4678  int GetMaximumExtentLevel () const { return m_maximum_extent_level; }
4680  void SetMaximumExtentLevel (int c) { m_maximum_extent_level = (unsigned char)c; }
4682  void SetHardExtent (int c) { m_hard_extent = c; }
4684  int GetHardExtent () const { return m_hard_extent; }
4686  float const * GetVector () const { return m_vector; }
4688  void SetVector (float x, float y, float z) {
4689  m_vector[0] = x;
4690  m_vector[1] = y;
4691  m_vector[2] = z;
4692  }
4694  void SetVector (float const v[]) { SetVector(v[0], v[1], v[2]); }
4696  float GetVectorTolerance () const { return m_vector_tolerance; }
4698  void SetVectorTolerance (float tol) { m_vector_tolerance = tol; }
4699 
4700  void SetMaxDistance (float m) { m_max_distance = m; }
4702  float GetMaxDistance () const { return m_max_distance; }
4703 
4705  float const * GetViewVolume () const { return m_view_volume; }
4707  void SetViewVolume (float ax, float ay, float az, float bx, float by, float bz) {
4708  m_view_volume[0] = ax;
4709  m_view_volume[1] = ay;
4710  m_view_volume[2] = az;
4711  m_view_volume[3] = bx;
4712  m_view_volume[4] = by;
4713  m_view_volume[5] = bz;
4714  }
4716  void SetViewVolume (float const v[]) { SetViewVolume(v[0], v[1], v[2], v[3], v[4], v[5]); }
4717 
4719  void SetOrderedWeightsMask (int c) { m_ordered_weights_mask = (unsigned char)c; }
4721  int GetOrderedWeightsMask () const { return (int)m_ordered_weights_mask; }
4722 
4724  void SetOrderedWeight (int index, float weight) {
4725  m_ordered_weights[index] = weight;
4726  m_ordered_weights_mask |= 1<<index;
4727  }
4729  float GetOrderedWeight (int index) const { return m_ordered_weights[index]; }
4731  float const * GetOrderedWeights () const { return m_ordered_weights; }
4733  float * GetOrderedWeights () { return m_ordered_weights; }
4734 
4736  void SetSelectionLevel (int l) { m_selection_level = (unsigned char)l; }
4738  int GetSelectionLevel () const { return (int)m_selection_level; }
4739 
4741  void SetForceDefer (int l) { m_force_defer = l; }
4743  int GetForceDefer () const { return m_force_defer; }
4744 
4745 };
4746 
4748 
4755 };
4756 
4757 
4759 
4765 class BBINFILETK_API TK_Geometry_Options : public BBaseOpcodeHandler {
4766  protected:
4767  unsigned short m_mask;
4768  unsigned short m_value;
4769 
4771  float m_orientation[6];
4772 
4773  public:
4775  TK_Geometry_Options () : BBaseOpcodeHandler (TKE_Geometry_Options),
4776  m_mask (0), m_value (0), m_orientation_count (0) {}
4777  ~TK_Geometry_Options ();
4778 
4781  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
4782 
4783  TK_Status ReadAscii (BStreamFileToolkit & tk);
4784  TK_Status WriteAscii (BStreamFileToolkit & tk);
4785 
4787  void SetMask (int m) { m_mask = (unsigned short)m; }
4789  int GetMask () const { return (int)m_mask; }
4790 
4792  void SetOrientation (int count, float const o[]) {
4793  if (count != 3 && count != 6)
4794  return;
4795  m_orientation_count = (unsigned char)count;
4796  while (count-- > 0)
4797  m_orientation[count] = o[count];
4798  }
4800  int GetOrientationCount () const { return (int) m_orientation_count; }
4802  float const * GetOrientation () const { return m_orientation; }
4803 };
4804 
4807 
4812 class BBINFILETK_API TK_Visibility : public BBaseOpcodeHandler {
4813  protected:
4814  int m_mask;
4815  int m_value;
4816 
4817  public:
4820  : BBaseOpcodeHandler (TKE_Visibility), m_mask (0), m_value (0) {}
4821 
4824  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
4825 
4826  TK_Status ReadAscii (BStreamFileToolkit & tk);
4827  TK_Status WriteAscii (BStreamFileToolkit & tk);
4828 
4832  void SetGeometry (int m) {
4833  m_mask = m & TKO_Geo_All_Visibles;
4834  if ((m & TKO_Geo_Extended_Mask) != 0) {
4835  m_mask |= TKO_Geo_Extended;
4836  if ((m & TKO_Geo_Extended2_Mask) != 0)
4837  m_mask |= TKO_Geo_Extended2;
4838  }
4839  }
4844  int GetGeometry () const { return m_mask; }
4845 
4850  void SetValue (int m) { m_value = m; }
4855  int GetValue () const { return m_value; }
4856 };
4857 
4860 
4867 class BBINFILETK_API TK_Selectability : public BBaseOpcodeHandler {
4868  protected:
4869  int m_mask;
4870  int m_down;
4871  int m_up;
4875 
4876  public:
4879  : BBaseOpcodeHandler (TKE_Selectability),
4880  m_mask (0), m_down (0), m_up (0), m_move_down (0), m_move_up (0), m_invisible (0) {}
4881 
4884  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
4885 
4886  TK_Status ReadAscii (BStreamFileToolkit & tk);
4887  TK_Status WriteAscii (BStreamFileToolkit & tk);
4888 
4892  void SetGeometry (int m) {
4893  m_mask = m & TKO_Geo_All_Selects;
4894  if ((m & TKO_Geo_Extended_Mask) != 0)
4895  m_mask |= TKO_Geo_Extended;
4896  }
4901  int GetGeometry () const { return m_mask; }
4902 
4907  void SetDown (int m) { m_down = m; }
4912  int GetDown () const { return m_down; }
4913 
4918  void SetUp (int m) { m_up = m; }
4923  int GetUp () const { return m_up; }
4924 
4929  void SetMoveDown (int m) { m_move_down = m; }
4934  int GetMoveDown () const { return m_move_down; }
4935 
4940  void SetMoveUp (int m) { m_move_up = m; }
4945  int GetMoveUp () const { return m_move_up; }
4946 
4951  void SetWhenInvisible (int m) { m_invisible = m; }
4956  int GetWhenInvisible () const { return m_invisible; }
4957 };
4958 
4960 
4966 class BBINFILETK_API TK_Matrix : public BBaseOpcodeHandler {
4967  protected:
4968  float m_matrix[16];
4969  double m_dmatrix[16];
4970 
4971  public:
4973  TK_Matrix (unsigned char opcode)
4974  : BBaseOpcodeHandler (opcode) {}
4975 
4978  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
4979 
4980  TK_Status ReadAscii (BStreamFileToolkit & tk);
4981  TK_Status WriteAscii (BStreamFileToolkit & tk);
4982 
4984  void SetMatrix (float const m[]) {
4985  int i; for (i=0; i<16; i++) m_matrix[i] = m[i];
4986  }
4988  void SetDMatrix (double const m[]) {
4989  int i; for (i=0; i<16; i++) m_dmatrix[i] = m[i];
4990  }
4992  float const * GetMatrix () const { return m_matrix; }
4994  float * GetMatrix () { return m_matrix; }
4996  double const * GetDMatrix () const { return m_dmatrix; }
4998  double * GetDMatrix () { return m_dmatrix; }
4999 };
5000 
5001 
5016 
5037 
5087 
5088  // alignment format change in 17.80.
5089 
5090  // old alignment enum choices in lower nibble
5104  // and justification in higher nibble
5109 
5110  // new format defines bits for "building" alignment setting
5111  TKO_Text_Alignment_Center = 0x00,
5112  TKO_Text_Alignment_Left = 0x01,
5113  TKO_Text_Alignment_Right = 0x02,
5114  TKO_Text_Alignment_Bottom = 0x04,
5115  TKO_Text_Alignment_Top = 0x08,
5116  TKO_Text_Alignment_Point = 0x10,
5117  // can't have left & right, or bottom & top, so all bits is good as an "unset" placeholder
5118  TKO_Text_Alignment_Unspecified = 0x1F,
5119  // and uses same justification but shifted a bit higher
5122  // and the high bit will be set
5123  TKO_Text_Alignment_New_Format = 0x80,
5124 
5125 
5126 
5129 
5132 };
5133 
5139 class BBINFILETK_API TK_Enumerated : public BBaseOpcodeHandler {
5140  protected:
5141  char m_index;
5142 
5143  public:
5145  TK_Enumerated (unsigned char opcode)
5146  : BBaseOpcodeHandler (opcode), m_index (0) {}
5147 
5150  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5151 
5152  TK_Status ReadAscii (BStreamFileToolkit & tk);
5153  TK_Status WriteAscii (BStreamFileToolkit & tk);
5154 
5155  void SetIndex (int i) { m_index = (char)i; }
5157  int GetIndex () const { return (int)m_index; }
5158 };
5159 
5171 
5173 };
5174 // NOTE: any changes to this need to be reflected in generic_units_table in parse.cpp & HOpcodeHandler.cpp
5175 
5176 
5182 class BBINFILETK_API TK_Size : public BBaseOpcodeHandler {
5183  protected:
5184  float m_value;
5185  unsigned char m_units;
5186 
5187  public:
5189  TK_Size (unsigned char opcode)
5190  : BBaseOpcodeHandler (opcode), m_value (0.0f), m_units (TKO_Generic_Size_Unspecified) {}
5191 
5194  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5195 
5196  TK_Status ReadAscii (BStreamFileToolkit & tk);
5197  TK_Status WriteAscii (BStreamFileToolkit & tk);
5198 
5200  void SetSize (float value, int units = TKO_Generic_Size_Unspecified) {
5201  m_value = (value > 0.0f) ? value : 0.0f;
5202  m_units = (m_value > 0.0f) ? (unsigned char) units : (unsigned char) TKO_Generic_Size_Unspecified;
5203  }
5205  float GetSize () const { return m_value; }
5207  int GetUnits () const { return m_units; }
5208 };
5209 
5214 class BBINFILETK_API TK_Linear_Pattern : public BBaseOpcodeHandler {
5215  protected:
5216  unsigned short m_pattern;
5217 
5218  public:
5220  TK_Linear_Pattern (unsigned char opcode)
5221  : BBaseOpcodeHandler (opcode), m_pattern (0) {}
5222 
5225  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5226 
5227  TK_Status ReadAscii (BStreamFileToolkit & tk);
5228  TK_Status WriteAscii (BStreamFileToolkit & tk);
5229 
5231  void SetPattern (int p) { m_pattern = (unsigned short)p; }
5233  int GetPattern () const { return (int)m_pattern; }
5234 };
5235 
5241 class BBINFILETK_API TK_Named : public BBaseOpcodeHandler {
5242  protected:
5244  char * m_name;
5245  int m_index;
5246 
5247  public:
5249  TK_Named (unsigned char opcode)
5250  : BBaseOpcodeHandler (opcode), m_name_length (0), m_name (0), m_index (0) {}
5251  ~TK_Named();
5252 
5255  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5256 
5257  TK_Status ReadAscii (BStreamFileToolkit & tk);
5258  TK_Status WriteAscii (BStreamFileToolkit & tk);
5259 
5260  void Reset ();
5261 
5263  void SetName (char const * name);
5265  void SetName (int length);
5267  char const * GetName () const { return m_name; }
5269  char * GetName () { return m_name; }
5270 
5272  void SetIndex (int i) { Reset(); m_index = i; }
5274  int GetIndex () const { return (int)m_index; }
5275 };
5276 
5277 
5278 
5285 class BBINFILETK_API TK_Streaming : public BBaseOpcodeHandler {
5286  protected:
5287  bool m_flag;
5288 
5289  public:
5292 
5295  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5296 
5297  TK_Status ReadAscii (BStreamFileToolkit & tk);
5298  TK_Status WriteAscii (BStreamFileToolkit & tk);
5299 
5300  void SetStreaming (bool s) { m_flag = s; }
5302  bool GetStreaming () const { return m_flag; }
5303 };
5304 
5307 
5313 class BBINFILETK_API TK_Conditions : public BBaseOpcodeHandler {
5314  protected:
5315  int m_length;
5316  char * m_string;
5318  public:
5320  TK_Conditions () : BBaseOpcodeHandler (TKE_Conditions), m_length (0), m_string (0) {}
5321  ~TK_Conditions();
5322 
5325  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5326 
5327  TK_Status ReadAscii (BStreamFileToolkit & tk);
5328  TK_Status WriteAscii (BStreamFileToolkit & tk);
5329 
5330  void Reset ();
5331 
5333  void SetConditions (char const * options);
5335  void SetConditions (int length);
5337  char const * GetConditions () const { return m_string; }
5339  char * GetConditions () { return m_string; }
5341  int GetLength() { return m_length; }
5342 };
5343 
5344 
5350 
5352 };
5353 
5354 
5357 
5362 class BBINFILETK_API TK_Conditional_Action : public BBaseOpcodeHandler {
5363  protected:
5364  short m_type;
5365  short m_options;
5366  int m_length;
5367  char * m_string;
5369  public:
5371  TK_Conditional_Action () : BBaseOpcodeHandler (TKE_Conditional_Action), m_length (0), m_string (0) {}
5373 
5376  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5377 
5378  TK_Status ReadAscii (BStreamFileToolkit & tk);
5379  TK_Status WriteAscii (BStreamFileToolkit & tk);
5380 
5381  void Reset ();
5382 
5384  void SetCondition (char const * options);
5386  void SetCondition (int length);
5388  char const * GetCondition () const { return m_string; }
5390  char * GetCondition () { return m_string; }
5392  int GetLength() { return m_length; }
5393 
5395  void SetAction (int at) { m_type = (short)at; }
5397  int GetAction () const { return (int)m_type; }
5399  void SetOptions (int at) { m_options = (short)at; }
5401  int GetOptions () const { return (int)m_options; }
5402 };
5403 
5406 
5412 class BBINFILETK_API TK_User_Options : public BBaseOpcodeHandler {
5413  protected:
5414  int m_length;
5415  char * m_string;
5420  void set_options (char const * options);
5421  void set_options (int length);
5422 
5423  public:
5425  TK_User_Options () : BBaseOpcodeHandler (TKE_User_Options), m_length (0), m_string (0),
5426  m_indices (0), m_unicode (0), m_index_data(0) {}
5427  ~TK_User_Options();
5428 
5431  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5432 
5433  TK_Status ReadAscii (BStreamFileToolkit & tk);
5434  TK_Status WriteAscii (BStreamFileToolkit & tk);
5435 
5436  void Reset ();
5437 
5439  void SetOptions (char const * options) { set_options (options); }
5441  void SetOptions (int length) { set_options (length); }
5443  char const * GetOptions () const { return m_string; }
5445  char * GetOptions () { return m_string; }
5447  int GetLength() { return m_length; }
5448 };
5449 
5452 
5458 class BBINFILETK_API TK_Unicode_Options : public BBaseOpcodeHandler {
5459  protected:
5460  int m_length;
5461  unsigned short * m_string;
5463  public:
5465  TK_Unicode_Options () : BBaseOpcodeHandler (TKE_Unicode_Options), m_length (0), m_string (0) {}
5466  ~TK_Unicode_Options();
5467 
5470  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5471 
5472  TK_Status ReadAscii (BStreamFileToolkit & tk);
5473  TK_Status WriteAscii (BStreamFileToolkit & tk);
5474 
5475  void Reset ();
5476 
5478  void SetOptions (unsigned short const * options);
5480  void SetOptions (int length);
5482  unsigned short const * GetOptions () const { return m_string; }
5484  unsigned short * GetOptions () { return m_string; }
5486  int GetLength() { return m_length; }
5487 };
5488 
5490 
5496 class BBINFILETK_API TK_User_Index : public BBaseOpcodeHandler {
5497  protected:
5498  int m_count;
5499  int * m_indices;
5500  HLONG * m_values;
5502  void set_indices (int count, int const indices[], POINTER_SIZED_INT const values[]);
5503  void set_indices (int count);
5504 
5505  public:
5508  : BBaseOpcodeHandler (TKE_User_Index), m_count (0), m_indices (0), m_values (0), m_current_value(0) {}
5509  ~TK_User_Index();
5510 
5513  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5514 
5515  TK_Status ReadAscii (BStreamFileToolkit & tk);
5516  TK_Status WriteAscii (BStreamFileToolkit & tk);
5517 
5518  void Reset ();
5519 
5521  void SetIndices (int count, int const indices[], POINTER_SIZED_INT const values[])
5522  { set_indices (count, indices, values); }
5524  void SetIndices (int count) { set_indices (count); }
5526  int GetCount () const { return m_count; }
5528  int const * GetIndices () const { return m_indices; }
5530  int * GetIndices () { return m_indices; }
5532  HLONG const * GetValues () const { return m_values; }
5534  HLONG * GetValues () { return m_values; }
5535 };
5536 
5538 
5544 class BBINFILETK_API TK_User_Index_Data : public BBaseOpcodeHandler {
5545 protected:
5546  int m_count;
5547  int * m_indices;
5548  void ** m_values;
5549  int * m_sizes;
5550 
5552  void set_indices (int count, int const indices[], void const * values[], int const sizes[]);
5553  void set_indices (int count);
5554  void FreeMem ();
5555 
5556 public:
5559  : BBaseOpcodeHandler (TKE_User_Index_Data), m_count (0), m_indices (0), m_values (0), m_sizes(0), m_current_value(0) {}
5560  ~TK_User_Index_Data();
5561 
5564  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5565 
5566  void Reset ();
5567 
5569  void SetIndices (int count, int const indices[], void const * values[], int const sizes[]) {
5570  set_indices (count, indices, values, sizes);
5571  }
5572 
5574  void SetIndices (int count) { set_indices (count);}
5575 
5577  int GetCount () const { return m_count;}
5578 
5580  int const * GetIndices () const { return m_indices;}
5581 
5583  int * GetIndices () { return m_indices;}
5584 
5586  void ** const GetValues () const { return m_values;}
5587 
5589  void ** const GetValues () { return m_values;}
5590 
5592  int const * GetSizes () const { return m_sizes;}
5593 
5595  int * GetSizes () { return m_sizes;}
5596 };
5597 
5598 
5600 
5605 class BBINFILETK_API TK_User_Value : public BBaseOpcodeHandler {
5606  protected:
5607  HLONG m_value;
5608 
5609  public:
5612  : BBaseOpcodeHandler (TKE_User_Value), m_value (0) {}
5613 
5616  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5617 
5618  TK_Status ReadAscii (BStreamFileToolkit & tk);
5619  TK_Status WriteAscii (BStreamFileToolkit & tk);
5620 
5622  void SetValue (HLONG v) { m_value = v; }
5624  HLONG GetValue () const { return m_value; }
5625 };
5626 
5634 
5638 
5642 
5644 
5646 };
5647 
5649 
5654 class BBINFILETK_API2 TK_Camera : public BBaseOpcodeHandler {
5655  protected:
5659  float m_settings[14];
5661  double m_dsettings[14];
5663  float m_details[3];
5664  unsigned char m_projection;
5665  int m_length;
5666  char * m_name;
5669  void set_name (char const * name);
5670 
5671  void set_name (int length);
5672 
5673  public:
5675  TK_Camera (unsigned char opcode = TKE_Camera)
5676  : BBaseOpcodeHandler (opcode), m_length (0), m_name (0) {
5677  int i;
5678  int count = (int)(sizeof(m_settings) / sizeof(m_settings[0]));
5679  for (i = 0; i < count; i++) {
5680  m_settings[i] = 0;
5681  m_dsettings[i] = 0;
5682  }
5683  }
5684  ~TK_Camera();
5685 
5688  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5689 
5690  TK_Status ReadAscii (BStreamFileToolkit & tk);
5691  TK_Status WriteAscii (BStreamFileToolkit & tk);
5692 
5694  void SetPosition (float x, float y, float z)
5695  { m_settings[0] = x; m_settings[1] = y; m_settings[2] = z; }
5697  void SetPosition (float const p[]) { SetPosition (p[0], p[1], p[2]); }
5699  float const * GetPosition () const { return &m_settings[0]; }
5701  void GetPosition (float p[]) const { memcpy(p, GetPosition(), 3*sizeof(float)); }
5702 
5704  void SetDPosition (double x, double y, double z)
5705  { m_dsettings[0] = x; m_dsettings[1] = y; m_dsettings[2] = z; }
5707  void SetDPosition (double const p[]) { SetDPosition (p[0], p[1], p[2]); }
5709  double const * GetDPosition () const { return &m_dsettings[0]; }
5711  void GetDPosition (double p[]) const { memcpy(p, GetDPosition(), 3*sizeof(double)); }
5712 
5714  void SetTarget (float x, float y, float z)
5715  { m_settings[3] = x; m_settings[4] = y; m_settings[5] = z; }
5717  void SetTarget (float const t[]) { SetTarget (t[0], t[1], t[2]); }
5719  float const * GetTarget () const { return &m_settings[3]; }
5721  void GetTarget (float t[]) const { memcpy(t, GetTarget(), 3*sizeof(float)); }
5722 
5724  void SetDTarget (double x, double y, double z)
5725  { m_dsettings[3] = x; m_dsettings[4] = y; m_dsettings[5] = z; }
5727  void SetDTarget (double const t[]) { SetDTarget (t[0], t[1], t[2]); }
5729  double const * GetDTarget () const { return &m_dsettings[3]; }
5731  void GetDTarget (double t[]) const { memcpy(t, GetDTarget(), 3*sizeof(double)); }
5732 
5734  void SetUpVector (float x, float y, float z)
5735  { m_settings[6] = x; m_settings[7] = y; m_settings[8] = z; }
5737  void SetUpVector (float const u[]) { SetUpVector (u[0], u[1], u[2]); }
5739  float const * GetUpVector () const { return &m_settings[6]; }
5741  void GetUpVector (float u[]) const { memcpy(u,GetUpVector(),3*sizeof(float)); }
5742 
5744  void SetDUpVector (double x, double y, double z)
5745  { m_dsettings[6] = x; m_dsettings[7] = y; m_dsettings[8] = z; }
5747  void SetDUpVector (double const u[]) { SetDUpVector (u[0], u[1], u[2]); }
5749  double const * GetDUpVector () const { return &m_dsettings[6]; }
5751  void GetDUpVector (double u[]) const { memcpy(u, GetDUpVector(), 3*sizeof(double)); }
5752 
5754  void SetField (float w, float h) { m_settings[9] = w; m_settings[10] = h; }
5756  void SetField (float const f[]) { SetField (f[0], f[1]); }
5758  float const * GetField () const { return &m_settings[9]; }
5760  void GetField (float f[]) const { memcpy(f,GetField(),2*sizeof(float)); }
5761 
5763  void SetDField (double w, double h) { m_dsettings[9] = w; m_dsettings[10] = h; }
5765  void SetDField (double const f[]) { SetDField (f[0], f[1]); }
5767  double const * GetDField () const { return &m_dsettings[9]; }
5769  void GetDField (double f[]) const { memcpy(f, GetDField(), 2*sizeof(double)); }
5770 
5771 
5773  void SetOblique (float h, float v) { m_details[0] = h; m_details[1] = v;
5774  m_projection &= ~TKO_Camera_Oblique_Mask;
5775  if (h != 0.0f) m_projection |= TKO_Camera_Oblique_Y;
5776  if (v != 0.0f) m_projection |= TKO_Camera_Oblique_Mask;
5777  }
5779  void SetOblique (float const o[]) { SetOblique (o[0], o[1]); }
5781  float const * GetOblique () const { return m_details; }
5783  void GetOblique (float o[]) const { memcpy(o, GetOblique(), 2*sizeof(float)); }
5784 
5786  void SetNearLimit (float l) { m_details[2] = l;
5787  m_projection &= ~TKO_Camera_Near_Limit;
5788  if (l != 0.0f) m_projection |= TKO_Camera_Near_Limit;
5789  }
5791  float GetNearLimit () const { return m_details[2]; }
5792 
5793 
5795  void SetProjection (int p) { m_projection = (char)p; }
5797  int GetProjection () const { return (int)m_projection; }
5798 
5799 
5801  void SetView (char const * name) { set_name (name); }
5803  void SetView (int length) { set_name (length); }
5805  char const * GetView () const { return m_name; }
5807  char * GetView () { return m_name; }
5808 };
5809 
5811 
5816 class BBINFILETK_API TK_Window : public BBaseOpcodeHandler {
5817  protected:
5818  float m_window[4];
5819 
5820  public:
5823  : BBaseOpcodeHandler (TKE_Window) {}
5824 
5827  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5828 
5829  TK_Status ReadAscii (BStreamFileToolkit & tk);
5830  TK_Status WriteAscii (BStreamFileToolkit & tk);
5831 
5833  void SetWindow (float l, float r, float b, float t)
5834  { m_window[0] = l; m_window[1] = r; m_window[2] = b; m_window[3] = t; }
5836  void SetWindow (float const w[]) { SetWindow (w[0], w[1], w[2], w[3]); }
5838  float const * GetWindow () const { return m_window; }
5839 };
5840 
5841 
5847  TKO_Font_Names = 0x00000001,
5848  TKO_Font_Size = 0x00000002,
5850  TKO_Font_Transforms = 0x00000008,
5851  TKO_Font_Rotation = 0x00000010,
5852  TKO_Font_Slant = 0x00000020,
5853  TKO_Font_Width_Scale = 0x00000040,
5854  TKO_Font_Extended = 0x00000080,
5855  TKO_Font_Extended_Mask = 0xFFFFFF00, // internal use, indicates bits which require TKO_Font_Extended
5856  TKO_Font_Extended_Shift = 8, // internal use, indicatesshift of extended section
5857  TKO_Font_Extra_Space = 0x00000100,
5858  TKO_Font_Line_Spacing = 0x00000200,
5859  TKO_Font_Outline = 0x00000400,
5860  TKO_Font_Underline = 0x00000800,
5861  TKO_Font_Strikethrough = 0x00001000,
5862  TKO_Font_Overline = 0x00002000,
5864  TKO_Font_Extended2 = 0x00008000,
5868  TKO_Font_Fill_Edges = 0x00020000,
5869  TKO_Font_Bold = 0x00040000,
5870  TKO_Font_Italic = 0x00080000,
5871  TKO_Font_Renderer = 0x00100000,
5872  TKO_Font_Greeking_Mode = 0x00200000,
5873  TKO_Font_Preference = 0x00400000,
5874  TKO_Font_Layout = 0x00800000
5875 };
5876 
5877 
5878 
5883  TKO_Font_Layout_Default = 0,
5885 };
5886 
5887 
5888 #define TKO_Font_Size_Units TKO_Generic_Size_Units
5889 #define TKO_Font_Size_Object TKO_Generic_Size_Object
5890 #define TKO_Font_Size_Screen TKO_Generic_Size_Screen
5891 #define TKO_Font_Size_Window TKO_Generic_Size_Window
5892 #define TKO_Font_Size_Points TKO_Generic_Size_Points
5893 #define TKO_Font_Size_Pixels TKO_Generic_Size_Pixels
5894 #define TKO_Font_Size_Percent TKO_Generic_Size_Percent
5895 #define TKO_Font_Size_World TKO_Generic_Size_World
5896 
5897 
5907 };
5908 
5909 
5919 };
5920 
5930 };
5931 
5939 };
5940 
5942 
5949 class BBINFILETK_API TK_Text_Font : public BBaseOpcodeHandler {
5950  protected:
5951  int m_mask;
5952  int m_value;
5954  char * m_names;
5955  float m_size;
5956  float m_tolerance;
5957  float m_rotation;
5958  float m_slant;
5965  int m_renderers[2];
5966  int m_preferences[2];
5967  unsigned char m_size_units;
5968  unsigned char m_tolerance_units;
5969  unsigned char m_space_units;
5970  unsigned char m_greeking_units;
5971  unsigned char m_greeking_mode;
5972  unsigned char m_transforms;
5973  unsigned char m_renderer_cutoff_units;
5975  unsigned char m_layout;
5976 
5977  void set_names (int length);
5978  void set_names (char const * names);
5979 
5980  public:
5983  : BBaseOpcodeHandler (TKE_Text_Font), m_names_length (0), m_names (0) {}
5984  ~TK_Text_Font ();
5985 
5988  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
5989 
5990  TK_Status ReadAscii (BStreamFileToolkit & tk);
5991  TK_Status WriteAscii (BStreamFileToolkit & tk);
5992 
5993  void Reset ();
5994 
5996  void SetMask (int m) {
5997  m_mask = m;
5998  if ((m & TKO_Font_Extended2_Mask) != 0)
5999  m_mask |= TKO_Font_Extended2;
6000  if ((m & TKO_Font_Extended_Mask) != 0)
6001  m_mask |= TKO_Font_Extended;
6002  }
6004  int GetMask () const { return m_mask; }
6005 
6007  void SetValue (int v) { m_value = v; }
6009  int GetValue () const { return m_value; }
6010 
6012  void SetNames (char const * names) { set_names (names); }
6014  void SetNames (int length) { set_names (length); }
6016  char const * GetNames () const { return m_names; }
6018  char * GetNames () { return m_names; }
6019 
6021  void SetSize (float s) { m_size = s; }
6023  float GetSize () const { return m_size; }
6024 
6026  void SetSizeUnits (int u) { m_size_units = (unsigned char)u; }
6028  int GetSizeUnits () const { return (int)m_size_units; }
6029 
6031  void SetTolerance (float t) { m_tolerance = t; }
6033  float GetTolerance () const { return m_tolerance; }
6034 
6036  void SetToleranceUnits (int u) { m_tolerance_units = (unsigned char)u; }
6038  int GetToleranceUnits () const { return (int)m_tolerance_units; }
6039 
6041  void SetRotation (float r) { m_rotation = r; }
6043  float GetRotation () const { return m_rotation; }
6044 
6046  void SetSlant (float s) { m_slant = s; }
6048  float GetSlant () const { return m_slant; }
6049 
6051  void SetWidthScale (float s) { m_width_scale = s; }
6053  float GetWidthScale () const { return m_width_scale; }
6054 
6056  void SetExtraSpace (float s) { m_extra_space = s; }
6058  float GetExtraSpace () const { return m_extra_space; }
6059 
6061  void SetExtraSpaceUnits (int u) { m_space_units = (unsigned char)u; }
6063  int GetExtraSpaceUnits () const { return (int)m_space_units; }
6064 
6066  void SetLineSpacing (float s) { m_line_spacing = s; }
6068  float GetLineSpacing () const { return m_line_spacing; }
6069 
6071  void SetTransforms (int t) { m_transforms = (unsigned char)t; }
6073  int GetTransforms () const { return (int)m_transforms; }
6074 
6076  void SetGreekingLimit (float s) { m_greeking_limit = s; }
6078  float GetGreekingLimit () const { return m_greeking_limit; }
6079 
6081  void SetGreekingLimitUnits (int u) { m_greeking_units = (unsigned char)u; }
6083  int GetGreekingLimitUnits () const { return (int)m_greeking_units; }
6084 
6086  void SetGreekingMode (int m) { m_greeking_mode = (unsigned char)m; }
6088  int GetGreekingMode () const { return (int)m_greeking_mode; }
6089 
6090 
6092  void SetRenderer (int r) { m_renderers[0] = m_renderers[1] = r; }
6094  int GetRenderer () const { return m_renderers[0]; }
6095 
6097  void SetRenderers (int r1, int r2) { m_renderers[0] = r1; m_renderers[1] = r2; }
6099  int const * GetRenderers () const { return m_renderers; }
6100 
6102  void SetRendererCutoff (float s) { m_renderer_cutoff = s; }
6104  float GetRendererCutoff () const { return m_renderer_cutoff; }
6105 
6107  void SetRendererCutoffUnits (int u) { m_renderer_cutoff_units = (unsigned char)u; }
6109  int GetRendererCutoffUnits () const { return (int)m_renderer_cutoff_units; }
6110 
6111 
6113  void SetPreference (int r) { m_preferences[0] = m_preferences[1] = r; }
6115  int GetPreference () const { return m_preferences[0]; }
6116 
6118  void SetPreferences (int r1, int r2) { m_preferences[0] = r1; m_preferences[1] = r2; }
6120  int const * GetPreferences () const { return m_preferences; }
6121 
6123  void SetPreferenceCutoff (float s) { m_preference_cutoff = s; }
6125  float GetPreferenceCutoff () const { return m_preference_cutoff; }
6126 
6128  void SetPreferenceCutoffUnits (int u) { m_preference_cutoff_units = (unsigned char)u; }
6130  int GetPreferenceCutoffUnits () const { return (int)m_preference_cutoff_units; }
6131 
6133  void SetLayout (int l) {m_layout = (unsigned char)l;}
6135  int GetLayout () const {return (int)m_layout;}
6136 };
6137 
6139 
6141 
6156 };
6157 
6158 
6159 
6161 
6172 class BBINFILETK_API2 TK_Bounding : public BBaseOpcodeHandler {
6173  protected:
6174  double m_dvalues[6];
6175  float m_values[6];
6176  char m_type;
6177  bool m_is_valid;
6178  public:
6180  TK_Bounding (unsigned char opcode)
6181  : BBaseOpcodeHandler (opcode) {}
6183  TK_Bounding (unsigned char opcode, float min[], float max[])
6184  : BBaseOpcodeHandler (opcode), m_type (TKO_Bounding_Type_Cuboid), m_is_valid (true) {
6185  m_values[0] = min[0]; m_values[1] = min[1]; m_values[2] = min[2];
6186  m_values[3] = max[0]; m_values[4] = max[1]; m_values[5] = max[2];
6187  }
6189  TK_Bounding (unsigned char opcode, float center[], float radius)
6190  : BBaseOpcodeHandler (opcode), m_type (TKO_Bounding_Type_Sphere), m_is_valid (true) {
6191  m_values[0] = center[0]; m_values[1] = center[1]; m_values[2] = center[2];
6192  m_values[3] = radius;
6193  }
6195  TK_Bounding (unsigned char opcode, double min[], double max[])
6196  : BBaseOpcodeHandler (opcode), m_type (TKO_Bounding_Type_Cuboid), m_is_valid (true) {
6197  m_dvalues[0] = min[0]; m_dvalues[1] = min[1]; m_dvalues[2] = min[2];
6198  m_dvalues[3] = max[0]; m_dvalues[4] = max[1]; m_dvalues[5] = max[2];
6200  }
6202  TK_Bounding (unsigned char opcode, double center[], double radius)
6203  : BBaseOpcodeHandler (opcode), m_type (TKO_Bounding_Type_Sphere), m_is_valid (true) {
6204  m_dvalues[0] = center[0]; m_dvalues[1] = center[1]; m_dvalues[2] = center[2];
6205  m_dvalues[3] = radius;
6207  }
6208 
6211  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6212 
6213  TK_Status ReadAscii (BStreamFileToolkit & tk);
6214  TK_Status WriteAscii (BStreamFileToolkit & tk);
6215 };
6216 
6218 
6223  TKO_Light_Camera_Relative = 0x1
6224 };
6225 
6226 
6228 
6230 
6236 class BBINFILETK_API TK_Point : public BBaseOpcodeHandler {
6237  protected:
6238  float m_point[3];
6239  double m_dpoint[3];
6240  char m_options;
6241 
6242  public:
6244  TK_Point (unsigned char opcode)
6245  : BBaseOpcodeHandler (opcode) {
6246  m_point[0] = m_point[1] = m_point[2] = 0;
6247  m_dpoint[0] = m_dpoint[1] = m_dpoint[2] = 0;
6248  m_options = 0;
6249  };
6250 
6253  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6254 
6255  TK_Status ReadAscii (BStreamFileToolkit & tk);
6256  TK_Status WriteAscii (BStreamFileToolkit & tk);
6257 
6258  void Reset(void) {
6259  m_point[0] = m_point[1] = m_point[2] = 0;
6260  m_dpoint[0] = m_dpoint[1] = m_dpoint[2] = 0;
6261  m_options = 0;
6263  };
6264 
6265 
6266 
6268  void SetPoint (float x, float y, float z) { m_point[0] = x; m_point[1] = y; m_point[2] = z; }
6270  void SetPoint (float const p[]) { SetPoint (p[0], p[1], p[2]); }
6272  float const * GetPoint () const { return m_point; }
6273 
6275  void SetDPoint (double x, double y, double z) { m_dpoint[0] = x; m_dpoint[1] = y; m_dpoint[2] = z; }
6277  void SetDPoint (double const p[]) { SetDPoint (p[0], p[1], p[2]); }
6279  double const * GetDPoint () const { return m_dpoint; }
6280 
6282  void SetOptions (int o) { m_options = (char)o; }
6284  int GetOptions () const { return (int)m_options; }
6285 
6286 };
6287 
6288 
6289 
6291 
6296 class BBINFILETK_API TK_Line : public BBaseOpcodeHandler {
6297  protected:
6299  float m_points[6];
6301  double m_dpoints[6];
6302 
6303  public:
6305  TK_Line (unsigned char opcode = TKE_Line)
6306  : BBaseOpcodeHandler (opcode) {}
6307 
6310  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6311 
6312  TK_Status ReadAscii (BStreamFileToolkit & tk);
6313  TK_Status WriteAscii (BStreamFileToolkit & tk);
6314 
6316  void SetPoints (float x1, float y1, float z1, float x2, float y2, float z2) {
6317  m_points[0] = x1; m_points[1] = y1; m_points[2] = z1;
6318  m_points[3] = x2; m_points[4] = y2; m_points[5] = z2;
6319  }
6321  void SetPoints (float const s[], float const e[]) {
6322  SetPoints (s[0], s[1], s[2], e[0], e[1], e[2]);
6323  }
6325  void SetPoints (float const p[]) { SetPoints (&p[0], &p[3]); }
6327  float const * GetPoints () const { return m_points; }
6328 
6330  void SetDPoints (double x1, double y1, double z1, double x2, double y2, double z2) {
6331  m_dpoints[0] = x1; m_dpoints[1] = y1; m_dpoints[2] = z1;
6332  m_dpoints[3] = x2; m_dpoints[4] = y2; m_dpoints[5] = z2;
6333  }
6335  void SetDPoints (double const s[], double const e[]) {
6336  SetDPoints (s[0], s[1], s[2], e[0], e[1], e[2]);
6337  }
6339  void SetDPoints (double const p[]) { SetDPoints (&p[0], &p[3]); }
6341  double const * GetDPoints () const { return m_dpoints; }
6342 
6343 };
6344 
6345 
6346 
6348 
6355 class BBINFILETK_API TK_Polypoint : public BBaseOpcodeHandler {
6356  protected:
6357  int m_count;
6359  float * m_points;
6360  double * m_dpoints;
6363  void set_points (int count, float const points[] = 0) { SetPoints (count, points); }
6364  public:
6368  TK_Polypoint (unsigned char opcode)
6369  : BBaseOpcodeHandler (opcode), m_count (0), m_allocated (0), m_points (0), m_dpoints (0) {}
6370  ~TK_Polypoint();
6371 
6374  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6375 
6376  TK_Status ReadAscii (BStreamFileToolkit & tk);
6377  TK_Status WriteAscii (BStreamFileToolkit & tk);
6378 
6379  void Reset ();
6380 
6383  void SetPoints (int count, float const points[] = 0);
6385  float const * GetPoints () const { return m_points; }
6387  float * GetPoints () { return m_points; }
6388 
6391  void SetDPoints (int count, double const points[] = 0);
6393  double const * GetDPoints () const { return m_dpoints; }
6395  double * GetDPoints () { return m_dpoints; }
6396 
6398  int GetCount () const { return m_count; }
6399 
6400 };
6401 
6402 
6403 
6404 
6405 #define NC_HAS_WEIGHTS 0x01
6406 #define NC_HAS_KNOTS 0x02
6407 #define NC_HAS_START 0x04
6408 #define NC_HAS_END 0x08
6409 
6410 
6416 class BBINFILETK_API TK_NURBS_Curve : public BBaseOpcodeHandler {
6417  protected:
6418  unsigned char m_optionals;
6419  unsigned char m_degree;
6424  float *m_weights;
6425  float *m_knots;
6426  float m_start;
6427  float m_end;
6429  void set_curve (int degree, int control_count, float const points[] = 0,
6431  float const weights[] = 0, float const knots[] = 0,
6432  float start = 0.0f, float end = 1.0f);
6433  public:
6434  TK_NURBS_Curve();
6435  ~TK_NURBS_Curve();
6436 
6439  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6440 
6441  TK_Status ReadAscii (BStreamFileToolkit & tk);
6442  TK_Status WriteAscii (BStreamFileToolkit & tk);
6443 
6444  void Reset ();
6445 
6447  void SetCurve (int degree, int control_count, float const points[] = 0,
6448  float const weights[] = 0, float const knots[] = 0,
6449  float start = 0.0f, float end = 1.0f) {
6450  set_curve (degree, control_count, points, weights, knots, start, end);
6451  }
6452  void SetDCurve (int degree, int control_count, double const points[] = 0,
6453  float const weights[] = 0, float const knots[] = 0,
6454  float start = 0.0f, float end = 1.0f);
6455 
6456  float const * GetPoints () const { return m_control_points; }
6457  float * GetPoints () { return m_control_points; }
6458  double const * GetDPoints () const { return m_dcontrol_points; }
6459  double * GetDPoints () { return m_dcontrol_points; }
6461  int GetDegree () const { return m_degree; }
6462  int GetCount () const { return m_control_point_count; }
6463  float const * GetWeights () const { return m_weights; }
6464  float * GetWeights () { return m_weights; }
6465  float const * GetKnots () const { return m_knots; }
6466  float * GetKnots () { return m_knots; }
6468  void SetStart (float s) { m_start = s; }
6469  float GetStart () const { return m_start; }
6470  void SetEnd (float e) { m_end = e; }
6471  float GetEnd () const { return m_end; }
6473  void SetOptions (int o) { m_optionals = (unsigned char)o; }
6474  int GetOptions () const { return m_optionals; }
6476 };
6477 
6478 
6479 
6480 
6481 
6482 #define NS_HAS_WEIGHTS 0x01
6483 #define NS_HAS_KNOTS 0x02
6484 #define NS_HAS_TRIMS 0x04
6485 
6486 #define NS_TRIM_END 0
6487 #define NS_TRIM_POLY 1
6488 #define NS_TRIM_CURVE 2
6489 #define NS_TRIM_COLLECTION 3
6490 #define NS_TRIM_LAST_KNOWN_TYPE 3
6491 
6492 #define NS_TRIM_KEEP 0x01
6493 #define NS_TRIM_HAS_WEIGHTS 0x02
6494 #define NS_TRIM_HAS_KNOTS 0x04
6495 
6496 
6503 class BBINFILETK_API HT_NURBS_Trim : public BBaseOpcodeHandler {
6504  friend class TK_NURBS_Surface;
6505  protected:
6506  //first 5 are relevant to polys and curves
6509  unsigned char m_type;
6510  int m_count;
6511  float * m_points;
6512  //next 6 are specific to curves
6513  unsigned char m_degree;
6514  unsigned char m_options;
6515  float * m_weights;
6516  float * m_knots;
6517  float m_start_u;
6518  float m_end_u;
6522  HT_NURBS_Trim();
6523  TK_Status read_collection(BStreamFileToolkit & tk);
6524  TK_Status write_collection(BStreamFileToolkit & tk);
6527  public:
6528  ~HT_NURBS_Trim();
6529  void SetPoly (int count, float const points[] = 0);
6530  void SetCurve (int degree, int control_count, float const points[] = 0,
6531  float const weights[] = 0, float const knots[] = 0, float start_u = 0, float end_u = 1);
6532  void SetCollection ();
6533  void SetOptions (int o) { m_options = (unsigned char)o; }
6534  void SetList (HT_NURBS_Trim *node) { m_list = node; }
6535  void SetNext (HT_NURBS_Trim *next) { m_next = next; }
6539 
6542 
6543  TK_Status read_collection_ascii(BStreamFileToolkit & tk);
6544  TK_Status write_collection_ascii(BStreamFileToolkit & tk);
6545 
6547  HT_NURBS_Trim * GetNext (void) { return m_next; }
6549  int GetType () const { return m_type; }
6551  int GetCount () const { return m_count; }
6553  float const * GetPoints () const { return m_points; }
6555  float * GetPoints () { return m_points; }
6557  int GetDegree () const { return m_degree; }
6559  int GetOptions () const { return m_options; }
6561  float const * GetWeights () const { return m_weights; }
6563  float * GetWeights () { return m_weights; }
6565  float const * GetKnots () const { return m_knots; }
6567  float * GetKnots () { return m_knots; }
6569  HT_NURBS_Trim const *GetList () const { return m_list; }
6571  HT_NURBS_Trim * GetList () { return m_list; }
6572 
6573 };
6574 
6576 
6581 class BBINFILETK_API TK_NURBS_Surface : public BBaseOpcodeHandler {
6582  protected:
6583  unsigned char m_optionals;
6584  unsigned char m_degree[2];
6585  int m_size[2];
6588  float * m_weights;
6589  float * m_u_knots;
6590  float * m_v_knots;
6596  public:
6597  TK_NURBS_Surface();
6598  ~TK_NURBS_Surface();
6599 
6602  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6603 
6604  TK_Status ReadAscii (BStreamFileToolkit & tk);
6605  TK_Status WriteAscii (BStreamFileToolkit & tk);
6606 
6607  void Reset ();
6609  void SetSurface (int u_degree, int v_degree, int u_size, int v_size,
6610  float const points[] = 0, float const weights[] = 0,
6611  float const u_knots[] = 0, float const v_knots[] = 0);
6612  void SetDSurface (int u_degree, int v_degree, int u_size, int v_size,
6613  double const points[] = 0, float const weights[] = 0,
6614  float const u_knots[] = 0, float const v_knots[] = 0);
6617  float const * GetPoints () const { return m_control_points; }
6619  float * GetPoints () { return m_control_points; }
6621  double const * GetDPoints () const { return m_dcontrol_points; }
6623  double * GetDPoints () { return m_dcontrol_points; }
6624 
6626  int GetUDegree () const { return m_degree[0]; }
6628  int GetVDegree () const { return m_degree[1]; }
6630  int GetUSize () const { return m_size[0]; }
6632  int GetVSize () const { return m_size[1]; }
6634  float const * GetWeights () const { return m_weights; }
6636  float * GetWeights () { return m_weights; }
6638  float const * GetUKnots () const { return m_u_knots; }
6640  float * GetUKnots () { return m_u_knots; }
6642  float const * GetVKnots () const { return m_v_knots; }
6644  float * GetVKnots () { return m_v_knots; }
6645 
6647  void SetOptions (int o) { m_optionals = (unsigned char)o; }
6649  int GetOptions () const { return m_optionals; }
6650 
6652  HT_NURBS_Trim * NewTrim (int type = NS_TRIM_END);
6654  HT_NURBS_Trim * GetTrims () { return m_trims; }
6655 
6656 
6657 };
6658 
6660 
6665 class BBINFILETK_API TK_Area_Light : public BBaseOpcodeHandler {
6666  protected:
6667  int m_count;
6668  float * m_points;
6669  double * m_dpoints;
6670  char m_options;
6671 
6673  void set_points (int count, float const points[] = 0);
6674 
6675  public:
6678  : BBaseOpcodeHandler (TKE_Area_Light), m_count (0), m_points (0), m_dpoints (0), m_options (0) {}
6679  ~TK_Area_Light();
6680 
6683  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6684 
6685  TK_Status ReadAscii (BStreamFileToolkit & tk);
6686  TK_Status WriteAscii (BStreamFileToolkit & tk);
6687 
6688  void Reset ();
6689 
6694  void SetPoints (int count, float const points[] = 0) { set_points (count, points); }
6696  float const * GetPoints () const { return m_points; }
6698  float * GetPoints () { return m_points; }
6699 
6704  void SetDPoints (int count, double const points[] = 0) ;
6706  double const * GetDPoints () const { return m_dpoints; }
6708  double * GetDPoints () { return m_dpoints; }
6709 
6711  int GetCount () const { return m_count; }
6712 
6714  void SetOptions (int o) { m_options = (char)o; }
6716  int GetOptions () const { return (int)m_options; }
6717 };
6718 
6719 
6726 
6730 
6733 
6735 
6737 };
6738 
6739 
6741 
6746 class BBINFILETK_API TK_Spot_Light : public BBaseOpcodeHandler {
6747  protected:
6748  float m_position[3];
6749  float m_target[3];
6750  double m_dposition[3];
6751  double m_dtarget[3];
6752  float m_outer;
6753  float m_inner;
6755  char m_options;
6756 
6757  public:
6760  : BBaseOpcodeHandler (TKE_Spot_Light), m_options (0) {}
6761 
6764  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6765 
6766  TK_Status ReadAscii (BStreamFileToolkit & tk);
6767  TK_Status WriteAscii (BStreamFileToolkit & tk);
6768 
6770  void SetPosition (float x, float y, float z)
6771  { m_position[0] = x; m_position[1] = y; m_position[2] = z; }
6773  void SetPosition (float const p[]) { SetPosition (p[0], p[1], p[2]); }
6775  float const * GetPosition () const { return m_position; }
6776 
6778  void SetDPosition (double x, double y, double z)
6779  { m_dposition[0] = x; m_dposition[1] = y; m_dposition[2] = z; }
6781  void SetDPosition (double const p[]) { SetDPosition (p[0], p[1], p[2]); }
6783  double const * GetDPosition () const { return m_dposition; }
6784 
6786  void SetTarget (float x, float y, float z)
6787  { m_target[0] = x; m_target[1] = y; m_target[2] = z; }
6789  void SetTarget (float const t[]) { SetTarget (t[0], t[1], t[2]); }
6791  float const * GetTarget () const { return m_target; }
6792 
6794  void SetDTarget (double x, double y, double z)
6795  { m_dtarget[0] = x; m_dtarget[1] = y; m_dtarget[2] = z; }
6797  void SetDTarget (double const t[]) { SetDTarget (t[0], t[1], t[2]); }
6799  double const * GetDTarget () const { return m_dtarget; }
6800 
6802  void SetOuter (float o) { m_outer = o; }
6804  float GetOuter () const { return m_outer; }
6805 
6807  void SetInner (float i) { m_inner = i; }
6809  float GetInner () const { return m_inner; }
6810 
6812  void SetConcentration (float c) { m_concentration = c; }
6814  float GetConcentration () const { return m_concentration; }
6815 
6817  void SetOptions (int o) { m_options = (char)o; }
6819  int GetOptions () const { return (int)m_options; }
6820 };
6821 
6822 
6824 
6829 class BBINFILETK_API TK_Cutting_Plane : public BBaseOpcodeHandler {
6830  protected:
6831  float * m_planes;
6832  double * m_dplanes;
6833  int m_count;
6834 
6835  public:
6838  : BBaseOpcodeHandler (TKE_Cutting_Plane), m_planes (0), m_dplanes (0), m_count (0) {}
6839  ~TK_Cutting_Plane ();
6840 
6843  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6844 
6845  TK_Status ReadAscii (BStreamFileToolkit & tk);
6846  TK_Status WriteAscii (BStreamFileToolkit & tk);
6847 
6848  void Reset ();
6849 
6851  void SetPlanes (int count, float const p[]=0);
6853  void SetDPlanes (int count, double const p[]=0);
6854 
6856  void SetPlane (float a, float b, float c, float d)
6857  { SetPlanes(1);
6858  m_planes[0] = a; m_planes[1] = b; m_planes[2] = c; m_planes[3] = d; }
6860  void SetDPlane (double a, double b, double c, double d)
6861  { SetDPlanes(1);
6862  m_dplanes[0] = a; m_dplanes[1] = b; m_dplanes[2] = c; m_dplanes[3] = d; }
6863 
6865  void SetPlane (float const p[]) { SetPlanes (1, p); }
6867  void SetDPlane (double const p[]) { SetDPlanes (1, p); }
6868 
6870  float const * GetPlane () const { return m_planes; }
6872  double const * GetDPlane () const { return m_dplanes; }
6873 
6875  float const * GetPlanes () const { return m_planes; }
6877  double const * GetDPlanes () const { return m_dplanes; }
6878 
6880  int GetCount () const { return m_count; }
6881 };
6882 
6883 
6889 };
6890 
6892 
6899 class BBINFILETK_API TK_Circle : public BBaseOpcodeHandler {
6900  protected:
6901  float m_points[9];
6902  float m_center[3];
6903  double m_dpoints[9];
6904  double m_dcenter[3];
6905  unsigned char m_flags;
6908  public:
6910  TK_Circle (unsigned char opcode)
6911  : BBaseOpcodeHandler (opcode), m_flags (0) {}
6912 
6915  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
6916 
6917  TK_Status ReadAscii (BStreamFileToolkit & tk);
6918  TK_Status WriteAscii (BStreamFileToolkit & tk);
6919 
6920  void Reset ();
6921 
6923  void SetStart (float x, float y, float z) {
6924  m_points[0] = x; m_points[1] = y; m_points[2] = z;
6925  }
6927  void SetStart (float const s[]) {
6928  SetStart (s[0], s[1], s[2]);
6929  }
6931  void SetMiddle (float x, float y, float z) {
6932  m_points[3] = x; m_points[4] = y; m_points[5] = z;
6933  }
6935  void SetMiddle (float const m[]) {
6936  SetMiddle (m[0], m[1], m[2]);
6937  }
6939  void SetEnd (float x, float y, float z) {
6940  m_points[6] = x; m_points[7] = y; m_points[8] = z;
6941  }
6943  void SetEnd (float const e[]) {
6944  SetEnd (e[0], e[1], e[2]);
6945  }
6947  void SetCenter (float x, float y, float z) {
6948  m_center[0] = x; m_center[1] = y; m_center[2] = z;
6949  m_flags = TKO_Circular_Center;
6950  }
6952  void SetCenter (float const c[]) {
6953  if (c) SetCenter (c[0], c[1], c[2]);
6954  else m_flags = 0;
6955  }
6957  void SetPoints (float const s[], float const m[], float const e[],
6958  float const c[] = 0) {
6959  SetStart (s); SetMiddle (m); SetEnd (e); SetCenter (c);
6960  }
6961 
6963  float const * GetStart () const { return &m_points[0]; }
6965  float const * GetMiddle () const { return &m_points[3]; }
6967  float const * GetEnd () const { return &m_points[6]; }
6969  float const * GetCenter () const { return (m_flags & TKO_Circular_Center) ? m_center : 0; }
6970 
6972  void SetDStart (double x, double y, double z) {
6973  m_dpoints[0] = x; m_dpoints[1] = y; m_dpoints[2] = z;
6974  }
6976  void SetDStart (double const s[]) {
6977  SetDStart (s[0], s[1], s[2]);
6978  }
6980  void SetDMiddle (double x, double y, double z) {
6981  m_dpoints[3] = x; m_dpoints[4] = y; m_dpoints[5] = z;
6982  }
6984  void SetDMiddle (double const m[]) {
6985  SetDMiddle (m[0], m[1], m[2]);
6986  }
6988  void SetDEnd (double x, double y, double z) {
6989  m_dpoints[6] = x; m_dpoints[7] = y; m_dpoints[8] = z;
6990  }
6992  void SetDEnd (double const e[]) {
6993  SetDEnd (e[0], e[1], e[2]);
6994  }
6996  void SetDCenter (double x, double y, double z) {
6997  m_dcenter[0] = x; m_dcenter[1] = y; m_dcenter[2] = z;
6998  m_flags = TKO_Circular_Center;
6999  }
7001  void SetDCenter (double const c[]) {
7002  if (c) SetDCenter (c[0], c[1], c[2]);
7003  else m_flags = 0;
7004  }
7006  void SetDPoints (double const s[], double const m[], double const e[],
7007  double const c[] = 0) {
7008  SetDStart (s); SetDMiddle (m); SetDEnd (e); SetDCenter (c);
7009  }
7010 
7012  double const * GetDStart () const { return &m_dpoints[0]; }
7014  double const * GetDMiddle () const { return &m_dpoints[3]; }
7016  double const * GetDEnd () const { return &m_dpoints[6]; }
7018  double const * GetDCenter () const { return (m_flags & TKO_Circular_Center) ? m_dcenter : 0; }
7019 };
7020 
7021 
7023 
7030 class BBINFILETK_API TK_Ellipse : public BBaseOpcodeHandler {
7031  protected:
7032  float m_points[9];
7033  double m_dpoints[9];
7034  float m_limits[2];
7036  public:
7038  TK_Ellipse (unsigned char opcode)
7039  : BBaseOpcodeHandler (opcode) {}
7040 
7043  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7044 
7045  TK_Status ReadAscii (BStreamFileToolkit & tk);
7046  TK_Status WriteAscii (BStreamFileToolkit & tk);
7047 
7049  void SetCenter (float x, float y, float z) {
7050  m_points[0] = x; m_points[1] = y; m_points[2] = z;
7051  }
7053  void SetCenter (float const s[]) { SetCenter (s[0], s[1], s[2]); }
7055  float const * GetCenter () const { return &m_points[0]; }
7056 
7058  void SetMajor (float x, float y, float z) {
7059  m_points[3] = x; m_points[4] = y; m_points[5] = z;
7060  }
7062  void SetMajor (float const m[]) { SetMajor (m[0], m[1], m[2]); }
7064  float const * GetMajor () const { return &m_points[3]; }
7065 
7067  void SetMinor (float x, float y, float z) {
7068  m_points[6] = x; m_points[7] = y; m_points[8] = z;
7069  }
7071  void SetMinor (float const m[]) { SetMinor (m[0], m[1], m[2]); }
7073  float const * GetMinor () const { return &m_points[6]; }
7074 
7075 
7077  void SetDCenter (double x, double y, double z) {
7078  m_dpoints[0] = x; m_dpoints[1] = y; m_dpoints[2] = z;
7079  }
7081  void SetDCenter (double const s[]) { SetDCenter (s[0], s[1], s[2]);}
7083  double const * GetDCenter () const { return &m_dpoints[0]; }
7084 
7086  void SetDMajor (double x, double y, double z) {
7087  m_dpoints[3] = x; m_dpoints[4] = y; m_dpoints[5] = z;
7088  }
7090  void SetDMajor (double const m[]) { SetDMajor (m[0], m[1], m[2]); }
7092  double const * GetDMajor () const { return &m_dpoints[3]; }
7093 
7095  void SetDMinor (double x, double y, double z) {
7096  m_dpoints[6] = x; m_dpoints[7] = y; m_dpoints[8] = z;
7097  }
7099  void SetDMinor (double const m[]) { SetDMinor (m[0], m[1], m[2]); }
7101  double const * GetDMinor () const { return &m_dpoints[6]; }
7102 
7104  void SetLimits (float s, float e) {
7105  m_limits[0] = s; m_limits[1] = e;
7106  }
7108  float const * GetLimits () const { return m_limits; }
7109 };
7110 
7111 
7113 
7120 class BBINFILETK_API TK_Sphere : public BBaseOpcodeHandler {
7121  protected:
7122  unsigned char m_flags;
7123  float m_center[3];
7124  float m_radius;
7125  float m_axis[3];
7126  float m_ortho[3];
7127  double m_dcenter[3];
7128  double m_dradius;
7129  double m_daxis[3];
7130  double m_dortho[3];
7132  public:
7135  : BBaseOpcodeHandler (TKE_Sphere) { Reset(); }
7136 
7139  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7140 
7141  TK_Status ReadAscii (BStreamFileToolkit & tk);
7142  TK_Status WriteAscii (BStreamFileToolkit & tk);
7143 
7144  void Reset ();
7145 
7147  void SetCenter (float x, float y, float z) {
7148  m_center[0] = x; m_center[1] = y; m_center[2] = z;
7149  }
7151  void SetCenter (float const s[]) { SetCenter (s[0], s[1], s[2]); }
7153  float const * GetCenter () const { return m_center; }
7154 
7155 
7157  void SetRadius (float r) { m_radius = r; }
7159  float GetRadius () const { return m_radius; }
7160 
7162  void SetAxis (float x, float y, float z) {
7163  m_axis[0] = x; m_axis[1] = y; m_axis[2] = z;
7164  if (x != 0.0f || y != 1.0f || z != 0.0f)
7165  m_flags &= ~TKSPH_NULL_AXIS;
7166  }
7168  void SetAxis (float const s[]) { SetAxis (s[0], s[1], s[2]); }
7170  float const * GetAxis () const { return m_axis; }
7171 
7173  void SetOrtho (float x, float y, float z) {
7174  m_ortho[0] = x; m_ortho[1] = y; m_ortho[2] = z;
7175  if (x != 1.0f || y != 0.0f || z != 0.0f)
7176  m_flags &= ~TKSPH_NULL_AXIS;
7177  }
7179  void SetOrtho (float const s[]) { SetOrtho (s[0], s[1], s[2]); }
7181  float const * GetOrtho () const { return m_ortho; }
7182 
7183 
7185  void SetDCenter (double x, double y, double z) {
7186  m_dcenter[0] = x; m_dcenter[1] = y; m_dcenter[2] = z;
7187  }
7189  void SetDCenter (double const s[]) { SetDCenter (s[0], s[1], s[2]);}
7191  double const * GetDCenter () const { return m_dcenter; }
7192 
7193 
7195  void SetDRadius (double r) { m_dradius = r; }
7197  double GetDRadius () const { return m_dradius; }
7198 
7200  void SetDAxis (double x, double y, double z) {
7201  m_daxis[0] = x; m_daxis[1] = y; m_daxis[2] = z;
7202  if (x != 0.0f || y != 1.0f || z != 0.0f)
7203  m_flags &= ~TKSPH_NULL_AXIS;
7204  }
7206  void SetDAxis (double const s[]) { SetDAxis (s[0], s[1], s[2]); }
7208  double const * GetDAxis () const { return m_daxis; }
7209 
7211  void SetDOrtho (double x, double y, double z) {
7212  m_dortho[0] = x; m_dortho[1] = y; m_dortho[2] = z;
7213  if (x != 1.0f || y != 0.0f || z != 0.0f)
7214  m_flags &= ~TKSPH_NULL_AXIS;
7215  }
7217  void SetDOrtho (double const s[]) { SetDOrtho (s[0], s[1], s[2]); }
7219  double const * GetDOrtho () const { return m_dortho; }
7220 
7221 
7225  enum Flags {
7226  TKSPH_NONE = 0x0,
7227  TKSPH_NULL_AXIS = 0x1
7228  };
7229 
7230 };
7231 
7232 
7234 
7241 class BBINFILETK_API TK_Cylinder : public BBaseOpcodeHandler {
7242  protected:
7243  float m_axis[6];
7244  float m_radius;
7245  double m_daxis[6];
7246  double m_dradius;
7247  unsigned char m_flags;
7249  public:
7252  : BBaseOpcodeHandler (TKE_Cylinder) {}
7253 
7256  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7257 
7258  TK_Status ReadAscii (BStreamFileToolkit & tk);
7259  TK_Status WriteAscii (BStreamFileToolkit & tk);
7260 
7262  void SetAxis (float x1, float y1, float z1, float x2, float y2, float z2) {
7263  m_axis[0] = x1; m_axis[1] = y1; m_axis[2] = z1;
7264  m_axis[3] = x2; m_axis[4] = y2; m_axis[5] = z2;
7265  }
7267  void SetAxis (float const s[], float const e[]) { SetAxis (s[0], s[1], s[2], e[0], e[1], e[2]); }
7269  void SetAxis (float const a[]) { SetAxis (&a[0], &a[3]); }
7271  float const * GetAxis () const { return m_axis; }
7273  float const * GetStart () const { return &m_axis[0]; }
7275  float const * GetEnd () const { return &m_axis[3]; }
7276 
7278  void SetRadius (float r) { m_radius = r; }
7280  float GetRadius () const { return m_radius; }
7281 
7282 
7284  void SetDAxis (double x1, double y1, double z1, double x2, double y2, double z2) {
7285  m_daxis[0] = x1; m_daxis[1] = y1; m_daxis[2] = z1;
7286  m_daxis[3] = x2; m_daxis[4] = y2; m_daxis[5] = z2;
7287  }
7289  void SetDAxis (double const s[], double const e[]) { SetDAxis (s[0], s[1], s[2], e[0], e[1], e[2]); }
7291  void SetDAxis (double const a[]) { SetDAxis (&a[0], &a[3]); }
7293  double const * GetDAxis () const { return m_daxis; }
7295  double const * GetDStart () const { return &m_daxis[0]; }
7297  double const * GetDEnd () const { return &m_daxis[3]; }
7298 
7300  void SetDRadius (double r) { m_dradius = r; }
7302  double GetDRadius () const { return m_dradius; }
7303 
7304 
7306  void SetCaps (int f) { m_flags = (unsigned char)f; }
7308  int GetCaps () const { return m_flags; }
7309 
7314  TKCYL_NONE = 0,
7315  TKCYL_FIRST = 1,
7316  TKCYL_SECOND = 2,
7317  TKCYL_BOTH = 3
7318  };
7319 
7320 };
7321 
7322 
7324 
7331 #include "BPolyhedron.h"
7332 
7333 class BBINFILETK_API TK_PolyCylinder : public TK_Polyhedron {
7334  protected:
7335  int m_count;
7336  float * m_points;
7337  double * m_dpoints;
7339  float * m_radii;
7340  double * m_dradii;
7341  unsigned char m_flags;
7342  float m_normals[6];
7344  public:
7347  : TK_Polyhedron (TKE_PolyCylinder), m_count (0), m_points (0), m_dpoints (0),
7348  m_radius_count (0), m_radii (0), m_dradii (0) {}
7349  ~TK_PolyCylinder();
7350 
7353  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7354 
7355  TK_Status ReadAscii (BStreamFileToolkit & tk);
7356  TK_Status WriteAscii (BStreamFileToolkit & tk);
7357 
7358  virtual void Reset ();
7359 
7364  TKCYL_NORMAL_FIRST = 0x04,
7365  TKCYL_NORMAL_SECOND = 0x08,
7366  TKCYL_OPTIONALS = 0x10
7367  };
7368 
7373  void SetPoints (int count, float const points[] = 0);
7375  float const * GetPoints () const { return m_points; }
7377  float * GetPoints () { return m_points; }
7378 
7383  void SetRadii (int count, float const radii[] = 0);
7385  void SetRadius (float radius) { SetRadii (1, &radius); }
7387  float const * GetRadii () const { return m_radii; }
7389  float * GetRadii () { return m_radii; }
7390 
7391 
7396  void SetDPoints (int count, double const points[] = 0);
7398  double const * GetDPoints () const { return m_dpoints; }
7400  double * GetDPoints () { return m_dpoints; }
7401 
7406  void SetDRadii (int count, double const radii[] = 0);
7408  void SetDRadius (double radius) { SetDRadii (1, &radius); }
7410  double const * GetDRadii () const { return m_dradii; }
7412  double * GetDRadii () { return m_dradii; }
7413 
7414 
7416  int GetCount () const { return m_count; }
7418  int GetRadiusCount () const { return m_radius_count; }
7419 
7420 
7421 
7422 
7424  void SetCaps (int f) { m_flags &= ~0x03; m_flags |= f; }
7426  int GetCaps () const { return m_flags & 0x03; }
7427 
7429  void SetEndNormal (int index, float const normal[] = 0) {
7430  int mask = 0x40 << index;
7431  if (normal == 0)
7432  m_flags &= ~mask;
7433  else {
7434  m_flags |= mask;
7435  m_normals[3*index+0] = normal[0];
7436  m_normals[3*index+1] = normal[1];
7437  m_normals[3*index+2] = normal[2];
7438  }
7439  }
7441  float const * GetEndNormal (int index) const {
7442  int mask = 0x40 << index;
7443  if (m_flags & mask)
7444  return &m_normals[3*index];
7445  else
7446  return 0;
7447  }
7448 };
7449 
7450 
7452 
7458 class BBINFILETK_API TK_Grid : public BBaseOpcodeHandler {
7459  protected:
7460  char m_type;
7461  float m_points[9];
7462  double m_dpoints[9];
7463  int m_counts[2];
7465  public:
7468  : BBaseOpcodeHandler (TKE_Grid) {}
7469 
7472  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7473 
7474  TK_Status ReadAscii (BStreamFileToolkit & tk);
7475  TK_Status WriteAscii (BStreamFileToolkit & tk);
7476 
7478  void SetOrigin (float x, float y, float z) {
7479  m_points[0] = x; m_points[1] = y; m_points[2] = z;
7480  }
7482  void SetOrigin (float const o[]) { SetOrigin (o[0], o[1], o[2]); }
7484  float const * GetOrigin () const { return &m_points[0]; }
7486  float * GetOrigin () { return &m_points[0]; }
7487 
7489  void SetRef1 (float x, float y, float z) {
7490  m_points[3] = x; m_points[4] = y; m_points[5] = z;
7491  }
7493  void SetRef1 (float const r[]) { SetRef1 (r[0], r[1], r[2]); }
7495  float const * GetRef1 () const { return &m_points[3]; }
7497  float * GetRef1 () { return &m_points[3]; }
7498 
7500  void SetRef2 (float x, float y, float z) {
7501  m_points[6] = x; m_points[7] = y; m_points[8] = z;
7502  }
7504  void SetRef2 (float const r[]) { SetRef2 (r[0], r[1], r[2]); }
7506  float const * GetRef2 () const { return &m_points[6]; }
7508  float * GetRef2 () { return &m_points[6]; }
7509 
7510 
7512  void SetDOrigin (double x, double y, double z) {
7513  m_dpoints[0] = x; m_dpoints[1] = y; m_dpoints[2] = z;
7514  }
7516  void SetDOrigin (double const o[]) { SetDOrigin (o[0], o[1], o[2]);}
7518  double const * GetDOrigin () const { return &m_dpoints[0]; }
7520  double * GetDOrigin () { return &m_dpoints[0]; }
7521 
7523  void SetDRef1 (double x, double y, double z) {
7524  m_dpoints[3] = x; m_dpoints[4] = y; m_dpoints[5] = z;
7525  }
7527  void SetDRef1 (double const r[]) { SetDRef1 (r[0], r[1], r[2]); }
7529  double const * GetDRef1 () const { return &m_dpoints[3]; }
7531  double * GetDRef1 () { return &m_dpoints[3]; }
7532 
7534  void SetDRef2 (double x, double y, double z) {
7535  m_dpoints[6] = x; m_dpoints[7] = y; m_dpoints[8] = z;
7536  }
7538  void SetDRef2 (double const r[]) { SetDRef2 (r[0], r[1], r[2]); }
7540  double const * GetDRef2 () const { return &m_dpoints[6]; }
7542  double * GetDRef2 () { return &m_dpoints[6]; }
7543 
7544 
7546  void SetCounts (int c1, int c2) {
7547  m_counts[0] = c1; m_counts[1] = c2;
7548  }
7550  int const * GetCounts () const { return m_counts; }
7552  int * GetCounts () { return m_counts; }
7553 
7555  void SetType (int t) { m_type = (char)t; }
7557  int GetType () const { return (int)m_type; }
7558 };
7559 
7561 
7577 };
7578 
7585 };
7586 
7600 };
7601 
7609 };
7610 
7611 
7624  TKO_Character_Rotation_Fixed = 0x0100,
7628 };
7629 
7632  char * name;
7633 
7634  float color[3];
7635  float size;
7638  float slant;
7639  float rotation;
7640  float width_scale;
7641 
7642  unsigned short mask;
7643  unsigned short value;
7644 
7645  unsigned char size_units;
7646  unsigned char vertical_offset_units;
7647  unsigned char horizontal_offset_units;
7648 };
7649 
7650 
7652 
7658 class BBINFILETK_API TK_Text : public BBaseOpcodeHandler {
7659  protected:
7660  float m_position[3];
7661  double m_dposition[3];
7662  int m_length;
7664  char * m_string;
7665  unsigned char m_encoding;
7666  unsigned char m_options;
7667  unsigned char m_region_options;
7668  unsigned char m_region_fit;
7669  unsigned char m_region_count;
7670  float m_region[4*3];
7671  int m_count;
7674  int m_tmp;
7676  void set_string (char const * string);
7677  void set_string (int length);
7678 
7679  public:
7681  TK_Text (unsigned char opcode);
7682  ~TK_Text();
7683 
7686  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7687 
7688  TK_Status ReadAscii (BStreamFileToolkit & tk);
7689  TK_Status WriteAscii (BStreamFileToolkit & tk);
7690 
7691  void Reset ();
7692 
7694  void SetString (char const * string) { set_string (string); }
7696  void SetString (unsigned short const * string);
7698  void SetString (unsigned int const * string);
7700  void SetString (int length) { set_string (length); }
7702  char const * GetString () const { return m_string; }
7704  char * GetString () { return m_string; }
7705 
7707  void SetPosition (float x, float y, float z)
7708  { m_position[0] = x; m_position[1] = y; m_position[2] = z; }
7710  void SetPosition (float const p[]) { SetPosition (p[0], p[1], p[2]); }
7712  float const * GetPosition () const { return &m_position[0]; }
7713 
7715  void SetDPosition (double x, double y, double z)
7716  { m_dposition[0] = x; m_dposition[1] = y; m_dposition[2] = z; }
7718  void SetDPosition (double const p[]) { SetDPosition (p[0], p[1], p[2]); }
7720  double const * GetDPosition () const { return &m_dposition[0]; }
7721 
7723  void SetEncoding (int e) { m_encoding = (unsigned char)e; }
7725  int GetEncoding () const { return (int)m_encoding; }
7726 
7728  void SetTextRegion (int c, float const p[], int o=0, int f=0);
7730  int GetTextRegionCount () const { return (int)m_region_count; }
7732  float const * GetTextRegionPoints () const { return m_region; }
7734  int GetTextRegionOptions () const { return (int)m_region_options; }
7736  int GetTextRegionFitting () const { return (int)m_region_fit; }
7737 };
7738 
7740 
7742 
7749  TKO_Font_HOOPS_Stroked // data represents a HOOPS stroked font definition
7750 };
7751 
7752 
7754 
7760 class BBINFILETK_API TK_Font : public BBaseOpcodeHandler {
7761  protected:
7762  char * m_name;
7763  char * m_lookup;
7764  char * m_bytes;
7767  int m_length;
7768  unsigned char m_type;
7769  unsigned char m_encoding;
7771  void set_bytes (int size, char const * bytes = 0);
7774  void set_name (char const * string);
7776  void set_name (int length);
7778  void set_lookup (char const * string);
7780  void set_lookup (int length);
7781 
7782  public:
7784  TK_Font () : BBaseOpcodeHandler (TKE_Font),
7785  m_name (0), m_lookup (0), m_bytes (0), m_name_length (0), m_lookup_length (0), m_length (0),
7786  m_type (0), m_encoding (0) {}
7787  ~TK_Font();
7788 
7791  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7792 
7793  TK_Status ReadAscii (BStreamFileToolkit & tk);
7794  TK_Status WriteAscii (BStreamFileToolkit & tk);
7795 
7796  void Reset ();
7797 
7798 
7800  void SetType (int t) { m_type = (unsigned char)t;}
7802  int GetType () const { return (int)m_type; }
7803 
7808  void SetBytes (int size, char const * bytes = 0) { set_bytes (size, bytes); }
7810  int GetBytesCount () const { return m_length; }
7812  char const * GetBytes () const { return m_bytes; }
7814  char * GetBytes () { return m_bytes; }
7815 
7817  void SetName (char const * string) { set_name (string); }
7819  void SetName (int length) { set_name (length); }
7821  char const * GetName () const { return m_name; }
7823  char * GetName () { return m_name; }
7824 
7826  void SetLookup (char const * string) { set_lookup (string); }
7828  void SetLookup (int length) { set_lookup (length); }
7830  char const * GetLookup () const { return m_lookup; }
7832  char * GetLookup () { return m_lookup; }
7833 
7835  void SetEncoding (int e) { m_encoding = (unsigned char)e;}
7837  int GetEncoding () const { return (int)m_encoding; }
7838 };
7839 
7841 
7860 
7864 
7866  TKO_Image_Discard = 0x00000200,
7867  TKO_Image_Options_Mask = 0xFFFFFFF0,
7868 
7870 };
7871 
7872 
7874 extern const int TK_Image_Bytes_Per_Pixel[];
7875 
7887 };
7888 
7889 #ifndef DOXYGEN_SHOULD_SKIP_THIS
7890 
7891 class BBINFILETK_API2 TK_Image_Data_Buffer {
7892  protected:
7893  unsigned char * m_buffer;
7894  unsigned int m_allocated;
7895  unsigned int m_used;
7896 
7897  public:
7899  TK_Image_Data_Buffer() : m_buffer (0), m_allocated (0), m_used (0) {}
7900  ~TK_Image_Data_Buffer();
7901 
7902  void Resize (unsigned int size);
7903  void Expand (unsigned int size) { Resize (Size() + size); }
7904  void Reset ();
7905 
7906  unsigned int const & Size () const { return m_allocated; }
7907  unsigned int const & Used () const { return m_used; }
7908  unsigned int & Used () { return m_used; }
7909  unsigned char const * Buffer () const { return m_buffer; }
7910  unsigned char * Buffer () { return m_buffer; }
7911 };
7912 
7913 
7914 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
7915 
7916 
7918 
7924 class BBINFILETK_API2 TK_Image : public BBaseOpcodeHandler {
7925  protected:
7926  char * m_bytes;
7927  char * m_name;
7928  char * m_reference;
7929  float m_position[3];
7930  double m_dposition[3];
7931  int m_size[2];
7935  unsigned char m_format;
7936  unsigned int m_options;
7937  unsigned char m_compression;
7938  unsigned char m_bytes_format;
7939  float m_explicit_size[2];
7940  unsigned char m_explicit_units[2];
7941  TK_Image_Data_Buffer m_work_area[2];
7946  void set_data (int size, char const * bytes = 0, unsigned char data_format = TKO_Compression_None);
7949  void set_name (char const * string);
7951  void set_name (int length);
7952 
7954  TK_Status compress_image (BStreamFileToolkit & tk, int active_work_area = 0);
7956  TK_Status decompress_image (BStreamFileToolkit & tk, int active_work_area = 0);
7958  TK_Status read_jpeg_header ();
7959 
7960  public:
7962  TK_Image ();
7963  ~TK_Image();
7964 
7967  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
7968 
7969  TK_Status ReadAscii (BStreamFileToolkit & tk);
7970  TK_Status WriteAscii (BStreamFileToolkit & tk);
7971  TK_Status compress_image_ascii (BStreamFileToolkit & tk);
7972 
7973 
7974  void Reset ();
7975 
7980  void SetBytes (int size, char const * bytes = 0,
7981  unsigned char data_format = TKO_Compression_None)
7982  { set_data (size, bytes, data_format); }
7984  char const * GetBytes () const { return m_bytes; }
7986  char * GetBytes () { return m_bytes; }
7987 
7989  void SetName (char const * string) { set_name (string); }
7991  void SetName (int length) { set_name (length); }
7993  char const * GetName () const { return m_name; }
7995  char * GetName () { return m_name; }
7996 
7998  void SetReference (char const * string);
8000  void SetReference (int length);
8002  char const * GetReference () const { return m_reference; }
8004  char * GetReference () { return m_reference; }
8005 
8007  void SetPosition (float x, float y, float z)
8008  { m_position[0] = x; m_position[1] = y; m_position[2] = z; }
8010  void SetPosition (float const p[]) { SetPosition (p[0], p[1], p[2]); }
8012  float const * GetPosition () const { return &m_position[0]; }
8013 
8015  void SetDPosition (double x, double y, double z)
8016  { m_dposition[0] = x; m_dposition[1] = y; m_dposition[2] = z; }
8018  void SetDPosition (double const p[]) { SetDPosition (p[0], p[1], p[2]); }
8020  double const * GetDPosition () const { return &m_dposition[0]; }
8021 
8023  void SetSize (int w, int h) { m_size[0] = w; m_size[1] = h; }
8025  void SetSize (int const s[]) { m_size[0] = s[0]; m_size[1] = s[1]; }
8027  int const * GetSize () const { return m_size; }
8028 
8030  void SetFormat (int f) { m_format = (unsigned char)(f & TKO_Image_Format_Mask); }
8032  int GetFormat () const { return (int)m_format; }
8033 
8035  void SetOptions (int f) { m_options = (unsigned char)(f & TKO_Image_Options_Mask); }
8037  int GetOptions () const { return (int)m_options; }
8038 
8040  void SetCompression (int c) { m_compression = (unsigned char)c; }
8042  int GetCompression () const { return (int)m_compression; }
8043 };
8044 
8045 
8047 
8048 
8054  TKO_Texture_Tiling = 0x00000002,
8056  TKO_Texture_Decimation = 0x00000008,
8062  TKO_Texture_Layout = 0x00000200,
8063  TKO_Texture_Transform = 0x00000400,
8065  TKO_Texture_Caching = 0x00001000,
8066  TKO_Texture_DownSample = 0x00002000,
8068  TKO_Texture_Extended = 0x00008000,
8069  TKO_Texture_Extended_Mask = 0xFFFF0000, // internal use, indicates bit which require TKO_Texture_Extended
8070  TKO_Texture_Extended_Shift = 16, // internal use, indicates shift of extended section
8071  TKO_Texture_Decal = 0x00010000,
8072  TKO_Texture_Modulate = 0x00020000,
8075  TKO_Texture_Shader = 0x00100000,
8077  TKO_Texture_Camera = 0x00400000,
8080 };
8081 
8102 };
8103 
8104 
8113 };
8114 
8115 
8125 };
8126 
8136 };
8137 
8138 
8151 };
8152 
8153 
8166 };
8167 
8168 
8175 };
8176 
8177 
8179 
8185 class BBINFILETK_API2 TK_Texture : public BBaseOpcodeHandler {
8186  protected:
8187  char * m_name;
8189  char * m_image;
8190  char * m_camera;
8195  int m_flags;
8206  char m_layout;
8207  char m_tiling;
8208  float m_value_scale[2];
8209  int m_source_dimensions[3];
8210  char * m_transform;
8214  void set_name (int length);
8215  void set_name (char const * name);
8216  void set_image (int length);
8217  void set_image (char const * image);
8218  void set_transform (int length);
8219  void set_transform (char const * transform);
8220 
8221  public:
8223  TK_Texture () : BBaseOpcodeHandler (TKE_Texture),
8224  m_name (0), m_shader_source(0), m_image (0), m_camera (0),
8225  m_name_length (0), m_shader_source_length(0), m_image_length (0), m_camera_length (0),
8226  m_transform (0) {
8227  Reset();
8228  }
8229  ~TK_Texture();
8230 
8233  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8234 
8235  TK_Status ReadAscii (BStreamFileToolkit & tk);
8236  TK_Status WriteAscii (BStreamFileToolkit & tk);
8237 
8238  void Reset ();
8239 
8241  void SetName (char const * name) { set_name (name); }
8243  void SetName (int length) { set_name (length); }
8245  char const * GetName () const { return m_name; }
8247  char * GetName () { return m_name; }
8248 
8250  void SetShaderSource (char const * shader_source);
8252  void SetShaderSource (int length);
8254  char const * GetShaderSource () const { return m_shader_source; }
8256  char * GetShaderSource () { return m_shader_source; }
8257 
8259  void SetImage (char const * image) { set_image (image); }
8261  void SetImage (int length) { set_image (length); }
8263  char const * GetImage () const { return m_image; }
8265  char * GetImage () { return m_image; }
8266 
8268  void SetCamera (char const * camera);
8270  void SetCamera (int length);
8272  char const * GetCamera () const { return m_camera; }
8274  char * GetCamera () { return m_camera; }
8275 
8277  void SetFlags (int f) {
8278  m_flags = f;
8279  if ((f & TKO_Texture_Extended_Mask) != 0)
8280  m_flags |= TKO_Texture_Extended;
8281  }
8283  int GetFlags () const { return m_flags; }
8284 
8286  void SetParameterSource (int p) { m_param_source = (char)p; }
8288  int GetParameterSource () const { return (int)m_param_source; }
8289 
8291  void SetInterpolation (int p) { m_interpolation = (char)p; }
8293  int GetInterpolation () const { return (int)m_interpolation; }
8294 
8296  void SetDecimation (int p) { m_decimation = (char)p; }
8298  int GetDecimation () const { return (int)m_decimation; }
8299 
8301  void SetRedMapping (int p) { m_red_mapping = (char)p; }
8303  int GetRedMapping () const { return (int)m_red_mapping; }
8304 
8306  void SetGreenMapping (int p) { m_green_mapping = (char)p; }
8308  int GetGreenMapping () const { return (int)m_green_mapping; }
8309 
8311  void SetBlueMapping (int p) { m_blue_mapping = (char)p; }
8313  int GetBlueMapping () const { return (int)m_blue_mapping; }
8314 
8316  void SetAlphaMapping (int p) { m_alpha_mapping = (char)p; }
8318  int GetAlphaMapping () const { return (int)m_alpha_mapping; }
8319 
8321  void SetParameterFunction (int p) { m_param_function = (char)p; }
8323  int GetParameterFunction () const { return (int)m_param_function; }
8324 
8326  void SetLayout (int p) { m_layout = (char)p; }
8328  int GetLayout () const { return (int)m_layout; }
8329 
8331  void SetTiling (int p) { m_tiling = (char)p; }
8333  int GetTiling () const { return (int)m_tiling; }
8334 
8336  void SetValueScale (float v1, float v2) { m_value_scale[0] = v1; m_value_scale[1] = v2; }
8338  float const * GetValueScale () const { return m_value_scale; }
8339 
8341  void SetApplicationMode (int p) { m_apply_mode = (char)p; }
8343  int GetApplicationMode () const { return (int)m_apply_mode; }
8344 
8346  void SetParameterOffset (int p) { m_param_offset = (char)p; }
8348  int GetParameterOffset () const { return (int)m_param_offset; }
8349 
8354  void SetTransform (char const * transform) { set_transform (transform); }
8359  void SetTransform (int length) { set_transform (length); }
8361  char const * GetTransform () const { return m_transform; }
8363  char * GetTransform () { return m_transform; }
8364 };
8365 
8366 
8373 
8375 };
8376 
8378 
8384 class BBINFILETK_API2 TK_Thumbnail : public BBaseOpcodeHandler {
8385  protected:
8386  unsigned char * m_bytes;
8388  int m_size[2];
8389  unsigned char m_format;
8391  public:
8393  TK_Thumbnail() : BBaseOpcodeHandler (TKE_Thumbnail), m_bytes (0), m_allocated (0), m_format (TKO_Thumbnail_Invalid) {}
8394  ~TK_Thumbnail();
8395 
8398  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8399 
8400  TK_Status ReadAscii (BStreamFileToolkit & tk);
8401  TK_Status WriteAscii (BStreamFileToolkit & tk);
8402 
8404  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant);
8405  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
8406  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
8407  void Reset ();
8408 
8413  void SetBytes (int size, unsigned char const * bytes = 0);
8415  unsigned char const * GetBytes () const { return m_bytes; }
8417  unsigned char * GetBytes () { return m_bytes; }
8418 
8420  void SetSize (int w, int h) { m_size[0] = w; m_size[1] = h; }
8422  void SetSize (int const s[]) { m_size[0] = s[0]; m_size[1] = s[1]; }
8424  int const * GetSize () const { return m_size; }
8425 
8427  void SetFormat (int f) { m_format = (unsigned char)f; }
8429  int GetFormat () const { return (int)m_format; }
8430 };
8431 
8432 
8434 
8436 
8441 class BBINFILETK_API2 TK_Glyph_Definition : public BBaseOpcodeHandler {
8442  protected:
8444  int m_size;
8445  char * m_name;
8446  char * m_data;
8448  public:
8450  TK_Glyph_Definition () : BBaseOpcodeHandler (TKE_Glyph_Definition),
8451  m_name_length (0), m_size (0),
8452  m_name (0), m_data (0) {}
8454 
8457  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8458 
8459  TK_Status ReadAscii (BStreamFileToolkit & tk);
8460  TK_Status WriteAscii (BStreamFileToolkit & tk);
8461 
8462  void Reset ();
8463 
8465  void SetName (char const * name);
8467  void SetName (int length);
8469  char const * GetName () const { return m_name; }
8471  char * GetName () { return m_name; }
8472 
8474  void SetDefinition (int size, char const * data = 0);
8476  int GetDefinitionSize () const { return m_size; }
8478  char const * GetDefinition () const { return m_data; }
8480  char * GetDefinition () { return m_data; }
8481 };
8482 
8483 
8485 
8490 class BBINFILETK_API2 TK_Named_Style_Def : public BBaseOpcodeHandler {
8491  protected:
8493  char * m_name;
8496  char * m_segment;
8500  char * m_condition;
8504  bool m_follow;
8505 
8506  public:
8509  m_name_length (0), m_name (0),
8510  m_segment_length (0), m_segment (0) ,
8511  m_cond_length (0), m_cond_allocated (0), m_condition (0),
8512  m_key(-1), m_referee(0), m_follow(true) {}
8513  ~TK_Named_Style_Def();
8514 
8517  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8518 
8519  TK_Status ReadAscii (BStreamFileToolkit & tk);
8520  TK_Status WriteAscii (BStreamFileToolkit & tk);
8521 
8522  void Reset ();
8523 
8525  void SetName (char const * name);
8527  void SetName (int length);
8529  char const * GetName () const { return m_name; }
8531  char * GetName () { return m_name; }
8532 
8537  void SetSegment (char const * segment);
8542  void SetSegment (int length);
8546  char const * GetSegment () const { return m_segment; }
8551  char * GetSegment () { return m_segment; }
8552 };
8553 
8555 
8560 class BBINFILETK_API2 TK_Line_Style : public BBaseOpcodeHandler {
8561  protected:
8564  char * m_name;
8565  char * m_definition;
8567  public:
8569  TK_Line_Style () : BBaseOpcodeHandler (TKE_Line_Style),
8570  m_name_length (0), m_definition_length (0),
8571  m_name (0), m_definition (0) {}
8572  ~TK_Line_Style();
8573 
8576  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8577 
8578  TK_Status ReadAscii (BStreamFileToolkit & tk);
8579  TK_Status WriteAscii (BStreamFileToolkit & tk);
8580 
8581  void Reset ();
8582 
8584  void SetName (char const * name);
8586  void SetName (int length);
8588  char const * GetName () const { return m_name; }
8590  char * GetName () { return m_name; }
8591 
8593  void SetDefinition (char const * def);
8595  void SetDefinition (int length);
8597  char const * GetDefinition () const { return m_definition; }
8599  char * GetDefinition () { return m_definition; }
8600 };
8601 
8603 
8605 
8610 class BBINFILETK_API TK_Clip_Rectangle : public BBaseOpcodeHandler {
8611  protected:
8612  char m_options;
8613  float m_rect[4];
8615  public:
8618  : BBaseOpcodeHandler (TKE_Clip_Rectangle), m_options (0) {}
8619 
8622  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8623 
8624  TK_Status ReadAscii (BStreamFileToolkit & tk);
8625  TK_Status WriteAscii (BStreamFileToolkit & tk);
8626 
8627  void Reset ();
8628 
8630  void SetRectangle (float left, float right, float bottom, float top)
8631  { m_rect[0] = left; m_rect[1] = right; m_rect[2] = bottom; m_rect[3] = top; }
8633  void SetRectangle (float const * rect)
8634  { SetRectangle (rect[0], rect[1], rect[2], rect[3]); }
8636  float const * GetRectangle () const { return m_rect; }
8637 
8639  void SetOptions (int o) { m_options = (char)o; }
8641  int GetOptions () const { return (int)m_options; }
8642 };
8643 
8645 
8655 };
8656 
8658 
8663 class BBINFILETK_API TK_Clip_Region : public BBaseOpcodeHandler {
8664  protected:
8665  char m_options;
8666  int m_count;
8667  float * m_points;
8668  double * m_dpoints;
8672  public:
8675  : BBaseOpcodeHandler (TKE_Clip_Region), m_options (0), m_count (0), m_points (0), m_dpoints (0), m_complex (0) {}
8676  ~TK_Clip_Region();
8677 
8680  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8681 
8682  TK_Status ReadAscii (BStreamFileToolkit & tk);
8683  TK_Status WriteAscii (BStreamFileToolkit & tk);
8684 
8685  void Reset ();
8686 
8691  void SetPoints (int count, float const points[] = 0);
8693  float const * GetPoints () const { return m_points; }
8695  float * GetPoints () { return m_points; }
8696 
8701  void SetDPoints (int count, double const points[] = 0);
8703  double const * GetDPoints () const { return m_dpoints; }
8705  double * GetDPoints () { return m_dpoints; }
8706 
8707 
8709  int GetCount () const { return m_count; }
8710 
8711 
8713  void SetOptions (int o) { m_options = (char)o; }
8715  int GetOptions () const { return (int)m_options; }
8716 };
8717 
8718 
8720 
8722 
8727 class BBINFILETK_API TK_Complex_Clip_Region : public BBaseOpcodeHandler {
8728  protected:
8729  char m_options;
8730  int m_loops;
8731  int m_total;
8732  int * m_lengths;
8733  float * m_points;
8734  double * m_dpoints;
8736  public:
8739  : BBaseOpcodeHandler (TKE_Complex_Clip_Region), m_options (0), m_loops (0), m_total (0),
8740  m_lengths (0), m_points (0), m_dpoints (0) {}
8742 
8745  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8746 
8747  TK_Status ReadAscii (BStreamFileToolkit & tk);
8748  TK_Status WriteAscii (BStreamFileToolkit & tk);
8749 
8750  void Reset ();
8751 
8756  void SetPoints (int count, float const points[] = 0);
8758  float const * GetPoints () const { return m_points; }
8760  float * GetPoints () { return m_points; }
8761 
8766  void SetDPoints (int count, double const points[] = 0);
8768  double const * GetDPoints () const { return m_dpoints; }
8770  double * GetDPoints () { return m_dpoints; }
8771 
8772 
8777  void SetLengths (int count, int const lengths[] = 0);
8779  int const * GetLengths () const { return m_lengths; }
8781  int * GetLengths () { return m_lengths; }
8782 
8783 
8785  int GetTotal () const { return m_total; }
8787  int GetLoops () const { return m_loops; }
8788 
8789 
8791  void SetOptions (int o) { m_options = (char)o; }
8793  int GetOptions () const { return (int)m_options; }
8794 };
8795 
8796 
8798 
8800 
8816 class BBINFILETK_API2 TK_User_Data : public BBaseOpcodeHandler {
8817  protected:
8818  int m_size;
8819  unsigned char * m_data;
8822  void set_data (int size, unsigned char const * bytes = 0);
8824 
8825  public:
8828  : BBaseOpcodeHandler (TKE_Start_User_Data), m_size (0), m_data (0), m_buffer_size(0) {}
8829  ~TK_User_Data();
8830 
8833  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8834 
8835  TK_Status ReadAscii (BStreamFileToolkit & tk);
8836  TK_Status WriteAscii (BStreamFileToolkit & tk);
8837 
8839  void Reset ();
8840 
8845  void SetUserData (int size, unsigned char const * bytes = 0) { set_data (size, bytes); }
8847  unsigned char const * GetUserData () const { return m_data; }
8849  unsigned char * GetUserData () { return m_data; }
8851  int GetSize () const { return m_size; }
8852 
8854  void Resize (int size);
8855 
8857  void SetSize (int size);
8858 };
8859 
8860 
8862 
8864 
8876 class BBINFILETK_API2 TK_Material : public BBaseOpcodeHandler {
8877  protected:
8879 
8882  struct vlist_s *m_data;
8883 
8884  public:
8886  TK_Material () : BBaseOpcodeHandler (TKE_Material), m_total_size(0), m_data(0) {}
8887  ~TK_Material();
8888 
8891  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8892  void Reset ();
8893 
8894  TK_Status PushUserData (char const *buffer, int buffer_size, bool tally_total_size = true);
8895  TK_Status GetBlock (char const **ptr, int *buffer_size);
8896 };
8897 
8899 
8904 class BBINFILETK_API TK_XML : public BBaseOpcodeHandler {
8905  protected:
8906  int m_size;
8907  char * m_data;
8909  public:
8911  TK_XML (): BBaseOpcodeHandler (TKE_XML), m_size (0), m_data (0) {}
8912  ~TK_XML();
8913 
8916  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8917 
8918  TK_Status ReadAscii (BStreamFileToolkit & tk);
8919  TK_Status WriteAscii (BStreamFileToolkit & tk);
8920 
8922  void Reset ();
8923 
8928  void SetXML (int size, char const * data = 0);
8932  void AppendXML (int size, char const * data = 0);
8934  char const * GetXML () const { return m_data; }
8936  char * GetXML () { return m_data; }
8938  int GetSize () const { return m_size; }
8939 };
8940 
8941 
8942 
8944 
8950 class BBINFILETK_API TK_URL : public BBaseOpcodeHandler {
8951  protected:
8952  int m_length;
8954  char * m_string;
8956  public:
8959  m_length (0), m_allocated (0), m_string (0) {}
8960  ~TK_URL();
8961 
8964  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
8965 
8966  TK_Status ReadAscii (BStreamFileToolkit & tk);
8967  TK_Status WriteAscii (BStreamFileToolkit & tk);
8968 
8969  void Reset ();
8970 
8972  void SetString (char const * string);
8974  void SetString (int length);
8976  char const * GetString () const { return m_string; }
8978  char * GetString () { return m_string; }
8979 };
8980 
8981 
8983 
8989 class BBINFILETK_API TK_External_Reference : public BBaseOpcodeHandler {
8990  protected:
8991  int m_length;
8993  char * m_string;
8995  public:
8996  TK_External_Reference () : BBaseOpcodeHandler (TKE_External_Reference),
8997  m_length (0), m_allocated (0), m_string (0) {}
8999 
9002  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
9003 
9004  TK_Status ReadAscii (BStreamFileToolkit & tk);
9005  TK_Status WriteAscii (BStreamFileToolkit & tk);
9006 
9008  void Reset ();
9009 
9011  void SetString (char const * string);
9013  void SetString (int length);
9015  char const * GetString () const { return m_string; }
9017  char * GetString () { return m_string; }
9018 };
9019 
9020 
9022 
9028 class BBINFILETK_API TK_External_Reference_Unicode : public BBaseOpcodeHandler {
9029  protected:
9030  int m_length;
9032  wchar_t * m_string;
9034  public:
9035  TK_External_Reference_Unicode () : BBaseOpcodeHandler (TKE_External_Reference_Unicode),
9036  m_length (0), m_allocated (0), m_string (0) {}
9038 
9041  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
9042 
9044  void Reset ();
9045 
9047  void SetString (__wchar_t const * string);
9048 #ifdef _MSC_VER
9049  void SetString (unsigned short const * string);
9050 #endif
9051 
9052  void SetString (int length);
9054  wchar_t const * GetString () const { return m_string; }
9056  wchar_t * GetString () { return m_string; }
9057 };
9058 
9059 
9060 #endif //BOPCODE_HANDLER
9061 
void SetOptions(int o)
Definition: BOpcodeHandler.h:6533
void SetAxis(float const s[], float const e[])
Definition: BOpcodeHandler.h:7267
lighting interpolation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2577
char ** m_isoline_patterns
for internal use only.
Definition: BOpcodeHandler.h:3021
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4556
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4547
float GetPreferenceCutoff() const
Definition: BOpcodeHandler.h:6125
char * GetString()
Definition: BOpcodeHandler.h:2503
void SetColorMarkerContrastLockMask(int m)
Definition: BOpcodeHandler.h:3559
the offset from the standard position
Definition: BOpcodeHandler.h:7618
float * m_control_points
Definition: BOpcodeHandler.h:6422
float const * GetRGB() const
Definition: BOpcodeHandler.h:2263
int m_nurbs_options_value
For internal use only.
Definition: BOpcodeHandler.h:3051
type for 'quantization' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2792
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2915
static TK_Status PutData(BStreamFileToolkit &tk, short const *s, int n)
Definition: BOpcodeHandler.h:341
int GetMask(int index=0) const
Definition: BOpcodeHandler.h:3158
int GetTechnology() const
Definition: BOpcodeHandler.h:3183
internal use, indicates bits which require TKO_Geo_Extended2
Definition: BOpcodeHandler.h:1231
char m_isoline_position_type
for internal use only.
Definition: BOpcodeHandler.h:3015
BBaseOpcodeHandler * m_indices
Definition: BOpcodeHandler.h:5416
""
Definition: BOpcodeHandler.h:5071
int GetOptions() const
Definition: BOpcodeHandler.h:6284
void SetPoints(float const s[], float const e[])
Definition: BOpcodeHandler.h:6321
ID_Key last_key(BStreamFileToolkit &tk) const
obsolete
Definition: BOpcodeHandler.h:638
int value
For internal use only.
Definition: BOpcodeHandler.h:1367
refer to ::HC_Set_Visibility
Definition: BOpcodeHandler.h:5128
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1258
int GetSelectionLevel() const
Definition: BOpcodeHandler.h:4738
int GetFlags() const
Definition: BOpcodeHandler.h:8283
void SetType(int t)
Definition: BOpcodeHandler.h:7555
virtual bool NeedsContext(BStreamFileToolkit &tk) const
Definition: BOpcodeHandler.h:215
unsigned char const * GetUserData() const
Definition: BOpcodeHandler.h:8847
int GetMaximumExtentMode() const
Definition: BOpcodeHandler.h:4674
TK_Clip_Rectangle()
Definition: BOpcodeHandler.h:8617
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4477
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4537
int m_name_length
Definition: BOpcodeHandler.h:8443
TK_Grid()
Definition: BOpcodeHandler.h:7467
int m_name_length
Definition: BOpcodeHandler.h:7933
refer to ::HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:5020
type for 'shadow map' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2742
char m_maximum_extent_level
internal use; maximum extent level
Definition: BOpcodeHandler.h:4591
char * GetName()
Definition: BOpcodeHandler.h:7823
void SetJoinCutoffAngle(int d)
Definition: BOpcodeHandler.h:3211
int GetLodMinimumTriangleCount() const
Definition: BOpcodeHandler.h:4127
refer to ::HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:5035
int GetFormat() const
Definition: BOpcodeHandler.h:8032
void SetPixelThreshold(int c)
Definition: BOpcodeHandler.h:4666
float GetCutGeometryTolerance() const
Definition: BOpcodeHandler.h:4295
void SetDUpVector(double const u[])
Definition: BOpcodeHandler.h:5747
void SetVisibilityLockValue(int v)
Definition: BOpcodeHandler.h:3248
//
Definition: BOpcodeHandler.h:936
int const * GetSize() const
Definition: BOpcodeHandler.h:8424
int GetToleranceUnits() const
Definition: BOpcodeHandler.h:6038
""
Definition: BOpcodeHandler.h:5077
lighting interpolation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2654
self-explanatory
Definition: BOpcodeHandler.h:1332
bool GetLogging() const
Definition: BStreamFileToolkit.h:1005
float * m_v_knots
Definition: BOpcodeHandler.h:6590
void SetPattern(int p)
Definition: BOpcodeHandler.h:5231
int color_value
For internal use only.
Definition: BOpcodeHandler.h:1369
channel m_bump
internal use
Definition: BOpcodeHandler.h:2056
short color_text_mask
For internal use only.
Definition: BOpcodeHandler.h:1378
unsigned short m_unsigned_short
temporary
Definition: BOpcodeHandler.h:79
refer to ::HC_Define_Texture
Definition: BOpcodeHandler.h:8086
char m_space
internal use
Definition: BOpcodeHandler.h:2277
int GetOffset() const
Definition: BOpcodeHandler.h:2015
transform position only
Definition: BOpcodeHandler.h:5904
int m_allocated
Definition: BOpcodeHandler.h:8387
void SetTransmissionName(int length)
Definition: BOpcodeHandler.h:2163
double * m_dcontrol_points
Definition: BOpcodeHandler.h:6423
ID_Key GetIndex()
Definition: BOpcodeHandler.h:1718
""
Definition: BOpcodeHandler.h:5070
TKO_Character_Attributes
Definition: BOpcodeHandler.h:7615
void SetDUpVector(double x, double y, double z)
Definition: BOpcodeHandler.h:5744
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4545
void SetTransmission(float const rgb[])
Definition: BOpcodeHandler.h:2159
float const * GetField() const
Definition: BOpcodeHandler.h:5758
void SetLodFallback(int v)
Definition: BOpcodeHandler.h:4145
double * m_dpoints
Definition: BOpcodeHandler.h:7337
int GetCount() const
Definition: BOpcodeHandler.h:6711
char * GetCondition()
Definition: BOpcodeHandler.h:1738
static TK_Status GetData(BStreamFileToolkit &tk, short &s)
Definition: BOpcodeHandler.h:296
void SetComment(int length)
Definition: BOpcodeHandler.h:1118
char const * GetCamera() const
Definition: BOpcodeHandler.h:8272
void SetColorMarkerContrastForcedLockMask(int m)
Definition: BOpcodeHandler.h:3962
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4474
type for 'simple shadow' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2727
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5101
void SetOptions(int o)
Definition: BOpcodeHandler.h:8639
color interpolation value; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2568
static TK_Status GetData(BStreamFileToolkit &tk, unsigned char *b, int n)
Definition: BOpcodeHandler.h:284
the offset from the standard position
Definition: BOpcodeHandler.h:7626
int GetRadiusCount() const
Definition: BOpcodeHandler.h:7418
int const * GetIndices() const
Definition: BOpcodeHandler.h:5580
void SetColorLockValue(int v)
Definition: BOpcodeHandler.h:3271
static TK_Status PutData(BStreamFileToolkit &tk, char const *b, int n)
Definition: BOpcodeHandler.h:338
char const * GetTransmissionName() const
Definition: BOpcodeHandler.h:2167
void SetPosition(float const p[])
Definition: BOpcodeHandler.h:8010
refer to ::HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:5013
int GetForcedLockValue() const
Definition: BOpcodeHandler.h:3634
Definition: BOpcodeHandler.h:2431
void SetInternalSelectionLimit(int i)
Definition: BOpcodeHandler.h:4638
int m_count
internal use
Definition: BOpcodeHandler.h:6667
int m_lookup_length
Definition: BOpcodeHandler.h:7766
int m_shader_source_length
Definition: BOpcodeHandler.h:8192
void SetDRef1(double const r[])
Definition: BOpcodeHandler.h:7527
void SetDPosition(double x, double y, double z)
Definition: BOpcodeHandler.h:6778
void SetGeneralDisplacement(int d)
Definition: BOpcodeHandler.h:3206
unsigned short mask
specifies which settings are active (i.e. the attributes for which we have an opinion at this point) ...
Definition: BOpcodeHandler.h:7642
self-explanatory
Definition: BOpcodeHandler.h:1290
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2643
int m_current_value
for internal use only
Definition: BOpcodeHandler.h:5501
bool NeedsTag() const
Definition: BOpcodeHandler.h:197
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4509
unsigned int NextOpcodeSequence()
Definition: BStreamFileToolkit.h:1036
int GetColorVertexLockMask() const
Definition: BOpcodeHandler.h:3495
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2610
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2892
type for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2832
TK_Header()
Definition: BOpcodeHandler.h:1013
int m_values_length
internal use
Definition: BOpcodeHandler.h:2444
""
Definition: BOpcodeHandler.h:8121
refer to ::HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:5028
self-explanatory
Definition: BOpcodeHandler.h:7569
float const * GetWeights() const
Definition: BOpcodeHandler.h:6561
unsigned char m_degree
Definition: BOpcodeHandler.h:6513
int GetColorWindowForcedLockMask() const
Definition: BOpcodeHandler.h:3806
TKO_Texture_Option_Bits
Definition: BOpcodeHandler.h:8052
void SetAmbientUpVector(float const v[])
Definition: BOpcodeHandler.h:4425
Capping_Options
Definition: BOpcodeHandler.h:7363
int m_simple_reflection_blur
For internal use only.
Definition: BOpcodeHandler.h:3099
char const * GetView() const
Definition: BOpcodeHandler.h:5805
refer to ::HC_Set_Rendering_Options
Definition: BOpcodeHandler.h:5130
unsigned char m_tolerance_units
for internal use only
Definition: BOpcodeHandler.h:5968
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1262
int GetColorLineContrastLockValue() const
Definition: BOpcodeHandler.h:3552
unsigned char m_opcode
The opcode being handled by this particular object.
Definition: BOpcodeHandler.h:63
float const * GetPlane() const
Definition: BOpcodeHandler.h:6870
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2636
int GetTextRegionFitting() const
Definition: BOpcodeHandler.h:7736
common/shared items; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1193
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2669
float GetHlrFaceDisplacement() const
Definition: BOpcodeHandler.h:4071
""
Definition: BOpcodeHandler.h:5044
internal use, indicates shift for placement of extended section
Definition: BOpcodeHandler.h:1203
int GetDebug() const
Definition: BOpcodeHandler.h:3193
int GetNURBSCurveBudget() const
Definition: BOpcodeHandler.h:4097
""
Definition: BOpcodeHandler.h:5059
float const * GetAmbientUpVector() const
Definition: BOpcodeHandler.h:4427
char m_char
temporary
Definition: BOpcodeHandler.h:81
TK_Status PutGeneral(BStreamFileToolkit &tk)
Definition: BOpcodeHandler.h:479
type for 'antialias' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2804
""
Definition: BOpcodeHandler.h:8098
type for NURBS curve options; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2936
int GetColorTextContrastLockMask() const
Definition: BOpcodeHandler.h:3610
static TK_Status GetData(BStreamFileToolkit &tk, short *s, int n)
Definition: BOpcodeHandler.h:252
int GetGeometry() const
Definition: BOpcodeHandler.h:2418
type for cylinder tesselation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2942
void SetVertexDisplacement(int d)
Definition: BOpcodeHandler.h:3201
type for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2830
double const * GetDPoints() const
Definition: BOpcodeHandler.h:6341
int m_size
Definition: BOpcodeHandler.h:8818
self-explanatory
Definition: BOpcodeHandler.h:1311
refer to ::HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:5026
void SetFormat(int f)
Definition: BOpcodeHandler.h:8030
int GetLodAlgorithm() const
Definition: BOpcodeHandler.h:4123
void SetOblique(float h, float v)
Definition: BOpcodeHandler.h:5773
void SetColorTextLockValue(int v)
Definition: BOpcodeHandler.h:3386
unsigned short m_pattern
internal use
Definition: BOpcodeHandler.h:5216
double * m_dpoints
Definition: BOpcodeHandler.h:8668
channel m_specular
internal use
Definition: BOpcodeHandler.h:2051
TKO_Map_Format
Definition: BOpcodeHandler.h:2429
env map
Definition: BOpcodeHandler.h:1295
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1211
unsigned char const * GetBytes() const
Definition: BOpcodeHandler.h:8415
float vertical_offset
offset, positive or negative, from the standard position. units are specified separately in vertical_...
Definition: BOpcodeHandler.h:7636
mask for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2821
""
Definition: BOpcodeHandler.h:8089
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4535
""
Definition: BOpcodeHandler.h:5083
char * m_shader_source
Definition: BOpcodeHandler.h:8188
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2627
int m_length
internal use
Definition: BOpcodeHandler.h:1076
short color_face_value
For internal use only.
Definition: BOpcodeHandler.h:1371
void SetColorWindowForcedLockMask(int m)
Definition: BOpcodeHandler.h:3801
TK_Status ReadAscii(BStreamFileToolkit &tk)
Deprecated.
""
Definition: BOpcodeHandler.h:5050
type for contour options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2841
void SetBufferSizeLimit(int l)
Definition: BOpcodeHandler.h:4038
float * GetPoints()
Definition: BOpcodeHandler.h:6619
short m_type
Definition: BOpcodeHandler.h:5364
type for 'cut geometry' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2714
unsigned char Opcode() const
Definition: BOpcodeHandler.h:162
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2646
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4508
void SetTechnology(int t)
Definition: BOpcodeHandler.h:3181
int m_surface_trim_budget
For internal use only.
Definition: BOpcodeHandler.h:3055
void SetDTarget(double const t[])
Definition: BOpcodeHandler.h:5727
type for transparency field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2695
Handles the TKE_Reopen_Segment opcode.
Definition: BOpcodeHandler.h:1565
int m_current_level
the index of the level currently in progress.
Definition: BOpcodeHandler.h:1830
char m_options
for internal use only
Definition: BOpcodeHandler.h:6755
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2916
void SetPreferenceCutoffUnits(int u)
Definition: BOpcodeHandler.h:6128
void increase_nesting(BStreamFileToolkit &tk, int amount=1)
for internal use only
Definition: BOpcodeHandler.h:647
""
Definition: BOpcodeHandler.h:8056
HT_NURBS_Trim * m_list
Definition: BOpcodeHandler.h:6519
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2891
void SetDPoints(double const p[])
Definition: BOpcodeHandler.h:6339
void SetTolerance(float t)
Definition: BOpcodeHandler.h:6031
int m_highest_level
keeps track of highest level lod that has been seen so far
Definition: BOpcodeHandler.h:1826
char * GetTransform()
Definition: BOpcodeHandler.h:8363
self-explanatory
Definition: BOpcodeHandler.h:7566
void SetSimpleShadowBlur(int m)
Definition: BOpcodeHandler.h:4313
wchar_t unicode string
Definition: BOpcodeHandler.h:7576
float m_surface_max_facet_angle
For internal use only.
Definition: BOpcodeHandler.h:3057
unsigned short m_mask
internal use
Definition: BOpcodeHandler.h:4767
float m_radius
Definition: BOpcodeHandler.h:7244
void SetTarget(float const t[])
Definition: BOpcodeHandler.h:5717
int GetColorForcedLockValue() const
Definition: BOpcodeHandler.h:3679
int GetColorLineContrastLockMask() const
Definition: BOpcodeHandler.h:3541
char const * GetName() const
Definition: BOpcodeHandler.h:8529
void SetLodBounding(float const s[], float const e[])
Definition: BOpcodeHandler.h:4155
float m_hlr_weight
for internal use only.
Definition: BOpcodeHandler.h:3006
char * m_name
Definition: BOpcodeHandler.h:8493
type for NURBS curve options; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2924
TKO_Texture_Filters
Definition: BOpcodeHandler.h:8142
void SetBufferOptionsMask(int v)
Definition: BOpcodeHandler.h:4030
int m_nurbs_options_mask
For internal use only.
Definition: BOpcodeHandler.h:3050
float * m_control_points
Definition: BOpcodeHandler.h:6586
int m_loops
Definition: BOpcodeHandler.h:8730
extended bit for HLR suboptions; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2826
void SetImage(int length)
Definition: BOpcodeHandler.h:8261
short color_edge_value
For internal use only.
Definition: BOpcodeHandler.h:1373
type for contour options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2839
""
Definition: BOpcodeHandler.h:8110
void SetEncoding(int e)
Definition: BOpcodeHandler.h:7835
Handles the TKE_Close_Segment opcode.
Definition: BOpcodeHandler.h:1537
int GetPattern() const
Definition: BOpcodeHandler.h:5233
Handles the TKE_Geometry_Options opcode.
Definition: BOpcodeHandler.h:4765
float const * GetCenter() const
Definition: BOpcodeHandler.h:7153
int m_up
internal use; specifies what geometry is selectable on mouse button up. For internal use only...
Definition: BOpcodeHandler.h:4871
TKO_Heuristic_Bits
Definition: BOpcodeHandler.h:4469
int m_debug_allocated
Definition: BOpcodeHandler.h:68
double const * GetDPoints() const
Definition: BOpcodeHandler.h:6706
fea nodes setting is on; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2950
int GetOrientationCount() const
Definition: BOpcodeHandler.h:4800
mask of bits requiring extended
Definition: BOpcodeHandler.h:4487
self-explanatory
Definition: BOpcodeHandler.h:1352
float const * GetPoints() const
Definition: BOpcodeHandler.h:8758
void SetDEnd(double const e[])
Definition: BOpcodeHandler.h:6992
int GetColorVertexLockValue() const
Definition: BOpcodeHandler.h:3506
TK_Unavailable(char opcode)
Definition: BOpcodeHandler.h:992
void SetOptions(char const *options)
Definition: BOpcodeHandler.h:5439
static TK_Status GetData(BStreamFileToolkit &tk, float *f, int n)
Definition: BOpcodeHandler.h:268
void SetColorFaceLockMask(int m)
Definition: BOpcodeHandler.h:3283
""
Definition: BOpcodeHandler.h:8096
int GetUSize() const
Definition: BOpcodeHandler.h:6630
refer to ::HC_Define_Texture
Definition: BOpcodeHandler.h:8120
short color_window_mask
For internal use only.
Definition: BOpcodeHandler.h:1380
type for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2814
int m_allocated
Definition: BOpcodeHandler.h:9031
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: BOpcodeHandler.h:1938
void SetSelectionCulling(int c)
Definition: BOpcodeHandler.h:4662
void SetAxis(float x, float y, float z)
Definition: BOpcodeHandler.h:7162
float m_max_distance
internal use; max distance
Definition: BOpcodeHandler.h:4596
type for 'simple reflection' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2756
void SetDPoints(double const s[], double const m[], double const e[], double const c[]=0)
Definition: BOpcodeHandler.h:7006
channel m_transmission
internal use
Definition: BOpcodeHandler.h:2053
Handles the TKE_Cylinder opcode.
Definition: BOpcodeHandler.h:7241
void SetCenter(float const s[])
Definition: BOpcodeHandler.h:7053
""
Definition: BOpcodeHandler.h:5052
float m_radius
Definition: BOpcodeHandler.h:7124
void Reset(void)
Definition: BOpcodeHandler.h:6258
char const * GetBytes() const
Definition: BOpcodeHandler.h:7984
Handles the TKE_Color_By_Value opcode.
Definition: BOpcodeHandler.h:2273
unsigned char m_flags
Definition: BOpcodeHandler.h:7122
oblique y setting
Definition: BOpcodeHandler.h:5639
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1225
char * m_string
internal use
Definition: BOpcodeHandler.h:2447
type for 'simple reflection' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2754
TK_Sphere()
Definition: BOpcodeHandler.h:7134
int GetTotal() const
Definition: BOpcodeHandler.h:8785
HLONG const * GetValues() const
Definition: BOpcodeHandler.h:5532
double * GetDRadii()
Definition: BOpcodeHandler.h:7412
image is native JPEG data
Definition: BOpcodeHandler.h:7853
double * m_dpoints
Definition: BOpcodeHandler.h:8734
float GetGreekingLimit() const
Definition: BOpcodeHandler.h:6078
void SetShadowMapResolution(int m)
Definition: BOpcodeHandler.h:4365
double * GetDOrigin()
Definition: BOpcodeHandler.h:7520
void SetInner(float i)
Definition: BOpcodeHandler.h:6807
unsigned char m_region_count
Definition: BOpcodeHandler.h:7669
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1271
type for 'simple shadow' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2724
TK_Conditional_Action()
Definition: BOpcodeHandler.h:5371
char const * GetImage() const
Definition: BOpcodeHandler.h:8263
void SetDPlane(double a, double b, double c, double d)
Definition: BOpcodeHandler.h:6860
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2868
slant, specified in degrees clockwise
Definition: BOpcodeHandler.h:7621
void SetColorBackForcedLockMask(int m)
Definition: BOpcodeHandler.h:3870
int GetCount() const
Definition: BOpcodeHandler.h:6880
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2846
Handles the TKE_Termination and TKE_Pause opcodes.
Definition: BOpcodeHandler.h:1140
self-explanatory
Definition: BOpcodeHandler.h:6734
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4478
unsigned short m_contour_options
for internal use only.
Definition: BOpcodeHandler.h:3010
char * m_condition
Definition: BOpcodeHandler.h:8500
double * m_dpoints
internal use
Definition: BOpcodeHandler.h:6669
type for NURBS curve options; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2920
self-explanatory
Definition: BOpcodeHandler.h:1322
refer to ::HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:5011
int GetMaximumExtentLevel() const
Definition: BOpcodeHandler.h:4678
TK_Thumbnail()
Definition: BOpcodeHandler.h:8393
void GetDTarget(double t[]) const
Definition: BOpcodeHandler.h:5731
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2605
void decrease_nesting(BStreamFileToolkit &tk, int amount=1)
for internal use only
Definition: BOpcodeHandler.h:649
int GetLodNumCutoffs() const
Definition: BOpcodeHandler.h:4215
char m_options
relevant to TKE_Distant_Light and TKE_Local_Light only. See TKO_Light_Options.
Definition: BOpcodeHandler.h:6240
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2853
short color_vertex_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:1396
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2898
empty placeholder image, no real data, possible reference instead
Definition: BOpcodeHandler.h:7886
int GetLodClamp() const
Definition: BOpcodeHandler.h:4135
int GetTransparentHSR() const
Definition: BOpcodeHandler.h:3173
lighting interpolation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2578
int GetHSR() const
Definition: BOpcodeHandler.h:3168
self-explanatory
Definition: BOpcodeHandler.h:7881
void SetLookup(int length)
Definition: BOpcodeHandler.h:7828
void SetChannels(int c)
Definition: BOpcodeHandler.h:2103
float m_end_u
Definition: BOpcodeHandler.h:6518
refer to ::HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:5012
void SetName(int length)
Definition: BOpcodeHandler.h:7819
void SetPosition(float const p[])
Definition: BOpcodeHandler.h:6773
short color_window_value
For internal use only.
Definition: BOpcodeHandler.h:1381
texture interpolation value; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2563
extra item for selectability; refer to ::HC_Set_Selectability for a description
Definition: BOpcodeHandler.h:1242
self-explanatory
Definition: BOpcodeHandler.h:7882
float m_cut_geometry_tolerance
For internal use only.
Definition: BOpcodeHandler.h:3082
float * m_points
Definition: BOpcodeHandler.h:6511
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5097
bool validate_count(int count, int limit=1<< 24) const
Definition: BOpcodeHandler.h:678
self-explanatory
Definition: BOpcodeHandler.h:1342
void SetShadowMap(int m)
Definition: BOpcodeHandler.h:4360
void SetEnd(float x, float y, float z)
Definition: BOpcodeHandler.h:6939
""
Definition: BOpcodeHandler.h:5055
void SetDPosition(double const p[])
Definition: BOpcodeHandler.h:7718
double * GetDPoints()
Definition: BOpcodeHandler.h:6623
int m_cond_allocated
Definition: BOpcodeHandler.h:1694
void Revisit(BStreamFileToolkit &tk, float priority=0.0f, int variant=0) const
Definition: BOpcodeHandler.h:654
""
Definition: BOpcodeHandler.h:8072
char * m_name
Definition: BOpcodeHandler.h:8187
char m_green_mapping
Definition: BOpcodeHandler.h:8202
char * GetSegment()
Definition: BOpcodeHandler.h:1649
int GetLockValue() const
Definition: BOpcodeHandler.h:3231
char * GetString()
Definition: BOpcodeHandler.h:9017
unsigned char m_encoding
Definition: BOpcodeHandler.h:7769
Handles the TKE_Comment opcode.
Definition: BOpcodeHandler.h:1073
void SetSegment(char const *segment)
Definition: BOpcodeHandler.h:1506
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4506
TK_Bounding(unsigned char opcode, double min[], double max[])
Definition: BOpcodeHandler.h:6195
Definition: BOpcodeHandler.h:5241
void SetBumpName(char const *name)
Definition: BOpcodeHandler.h:2196
void SetImageScale(float const s[])
Definition: BOpcodeHandler.h:4432
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5093
void SetOrtho(float const s[])
Definition: BOpcodeHandler.h:7179
color index interpolation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2572
int GetColorTextLockValue() const
Definition: BOpcodeHandler.h:3391
int m_from_variant
internal use
Definition: BOpcodeHandler.h:1768
float const * GetDepthRange() const
Definition: BOpcodeHandler.h:4408
int m_mask
specifies which rendering options are active (and hence, which are valid). For internal use only...
Definition: BOpcodeHandler.h:5951
void SetTarget(float const t[])
Definition: BOpcodeHandler.h:6789
type for NURBS curve options; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2923
virtual void Reset()
refer to ::HC_Define_Shader
Definition: BOpcodeHandler.h:8079
int m_mask
internal use; specifies which selectability settings are active (and hence, which are valid)...
Definition: BOpcodeHandler.h:4869
type for 'mask transform' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2765
void SetGloss(float g)
Definition: BOpcodeHandler.h:2205
char const * GetTransform() const
Definition: BOpcodeHandler.h:8361
TK_Delete_Object()
Definition: BOpcodeHandler.h:1799
TK_Cutting_Plane()
Definition: BOpcodeHandler.h:6837
void SetCallback(int length)
Definition: BOpcodeHandler.h:2543
void SetMaximumExtentMode(int c)
Definition: BOpcodeHandler.h:4676
type for 'simple shadow' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2725
type for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2812
int m_hard_extent
internal use; hard extent
Definition: BOpcodeHandler.h:4592
select preferred drawing modes
Definition: BOpcodeHandler.h:5873
static TK_Status PutData(BStreamFileToolkit &tk, char const &c)
Definition: BOpcodeHandler.h:438
TKO_Generic_Size_Units
Definition: BOpcodeHandler.h:5163
void SetMoveDown(int m)
Definition: BOpcodeHandler.h:4929
void SetAxis(float const a[])
Definition: BOpcodeHandler.h:7269
void SetValue(float const triple[])
Definition: BOpcodeHandler.h:2321
type for 'simple reflection' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2762
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2886
wchar_t * m_string
Definition: BOpcodeHandler.h:9032
lighting interpolation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2582
int m_internal_polyline
internal use
Definition: BOpcodeHandler.h:4583
int GetColorFaceForcedLockMask() const
Definition: BOpcodeHandler.h:3691
int m_min_triangle_count
For internal use only.
Definition: BOpcodeHandler.h:3039
short color_line_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:1393
Handles the TKE_Reference opcodes.
Definition: BOpcodeHandler.h:1690
short color_cut_face_value
For internal use only.
Definition: BOpcodeHandler.h:1403
The BStreamFileToolkit class provides support for importing/exporting HOOPS Stream File information...
Definition: BStreamFileToolkit.h:367
void SetDAxis(double const s[])
Definition: BOpcodeHandler.h:7206
TK_Circle(unsigned char opcode)
Definition: BOpcodeHandler.h:6910
void SetOrderedWeight(int index, float weight)
Definition: BOpcodeHandler.h:4724
int m_flags
Definition: BOpcodeHandler.h:8195
char m_orientation_count
internal use
Definition: BOpcodeHandler.h:4770
int GetType() const
Definition: BOpcodeHandler.h:7802
static TK_Status GetData(BStreamFileToolkit &tk, float &f)
Definition: BOpcodeHandler.h:311
char m_layout
Definition: BOpcodeHandler.h:8206
static int flip(int i)
for internal use only
Definition: BOpcodeHandler.h:498
type for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2831
int GetColorLineLockMask() const
Definition: BOpcodeHandler.h:3334
refer to ::HC_Set_Geometry_Options
Definition: BOpcodeHandler.h:4753
int GetForceDefer() const
Definition: BOpcodeHandler.h:4743
char * GetXML()
Definition: BOpcodeHandler.h:8936
""
Definition: BOpcodeHandler.h:8132
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2865
int GetColorLineContrastForcedLockMask() const
Definition: BOpcodeHandler.h:3944
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2897
double const * GetDPosition() const
Definition: BOpcodeHandler.h:5709
Handles the TKE_Selectability opcode.
Definition: BOpcodeHandler.h:4867
float * m_points
Definition: BOpcodeHandler.h:6359
int GetOptions() const
Definition: BOpcodeHandler.h:8641
type for HSR field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2679
void SetTransparentHSR(int t)
Definition: BOpcodeHandler.h:3171
int GetMoveDown() const
Definition: BOpcodeHandler.h:4934
full transforms
Definition: BOpcodeHandler.h:5905
color by index
Definition: BOpcodeHandler.h:1293
double const * GetDField() const
Definition: BOpcodeHandler.h:5767
void SetSimpleReflectionVisibilityMask(int m)
Definition: BOpcodeHandler.h:4398
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5094
self-explanatory
Definition: BOpcodeHandler.h:1353
unsigned char m_format
Definition: BOpcodeHandler.h:8389
static TK_Status PutData(BStreamFileToolkit &tk, int const *i, int n)
Definition: BOpcodeHandler.h:362
unsigned char General_Flags() const
Definition: BOpcodeHandler.h:165
void SetRadius(float radius)
Definition: BOpcodeHandler.h:7385
int m_count
Definition: BOpcodeHandler.h:7671
text centered across region
Definition: BOpcodeHandler.h:7594
int m_count
Definition: BOpcodeHandler.h:6510
void SetInternalShellSelectionLimit(int i)
Definition: BOpcodeHandler.h:4643
window space
Definition: BOpcodeHandler.h:7591
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1239
self-explanatory
Definition: BOpcodeHandler.h:6725
int GetDegree() const
Definition: BOpcodeHandler.h:6557
Handles the TKE_Glyph_Definition opcode.
Definition: BOpcodeHandler.h:8441
static void fix(int *i, int n)
for internal use only
Definition: BOpcodeHandler.h:523
int m_size
Definition: BOpcodeHandler.h:8906
void SetColorVertexContrastForcedLockValue(int v)
Definition: BOpcodeHandler.h:3996
void SetView(char const *name)
Definition: BOpcodeHandler.h:5801
int m_edge_join_cutoff_angle
For internal use only.
Definition: BOpcodeHandler.h:3122
int m_knot_count_implicit
Definition: BOpcodeHandler.h:6421
self-explanatory
Definition: BOpcodeHandler.h:6728
int m_progress
Tracks the amount of data that has been read/written so far.
Definition: BOpcodeHandler.h:62
8-bit colormap indices
Definition: BOpcodeHandler.h:7846
type for 'antialias' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2806
void SetPosition(float const p[])
Definition: BOpcodeHandler.h:5697
short color_marker_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:1395
int GetCaps() const
Definition: BOpcodeHandler.h:7426
int m_allocated
Definition: BOpcodeHandler.h:7663
void SetIndex(float val)
Definition: BOpcodeHandler.h:2421
int GetRelatedSelectionLimit() const
Definition: BOpcodeHandler.h:4635
unsigned char m_bytes_format
Definition: BOpcodeHandler.h:7938
void SetCylinderTessellation(int n)
Definition: BOpcodeHandler.h:4227
void SetRef2(float x, float y, float z)
Definition: BOpcodeHandler.h:7500
Handles the TKE_Dictionary_Locater opcode.
Definition: BOpcodeHandler.h:1987
void SetEnd(float const e[])
Definition: BOpcodeHandler.h:6943
char m_num_sphere
For internal use only.
Definition: BOpcodeHandler.h:3070
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2590
char m_options
Definition: BOpcodeHandler.h:8729
Handles the TKE_Tag opcode.
Definition: BOpcodeHandler.h:1923
static TK_Status GetData(BStreamFileToolkit &tk, unsigned int *i, int n)
Definition: BOpcodeHandler.h:290
Definition: BStreamFileToolkit.h:34
float m_dihedral
For internal use only.
Definition: BOpcodeHandler.h:3112
int GetVisibilityLockValue() const
Definition: BOpcodeHandler.h:3253
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5095
float * m_u_knots
Definition: BOpcodeHandler.h:6589
""
Definition: BOpcodeHandler.h:5064
int GetUnits() const
Definition: BOpcodeHandler.h:5207
unsigned char * m_bytes
Definition: BOpcodeHandler.h:8386
type for 'cut geometry' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2708
int m_count
Definition: BOpcodeHandler.h:7335
void SetIndex(int i)
Definition: BOpcodeHandler.h:1581
void SetOrderedWeightsMask(int c)
Definition: BOpcodeHandler.h:4719
unsigned int m_options
Definition: BOpcodeHandler.h:7936
type for 'mask transform' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2766
unsigned char m_hlr_hsr_algorithm
for internal use only.
Definition: BOpcodeHandler.h:3008
void SetAntiAlias(int m)
Definition: BOpcodeHandler.h:4454
void SetDPosition(double const p[])
Definition: BOpcodeHandler.h:8018
float const * GetWeights() const
Definition: BOpcodeHandler.h:6463
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4554
float m_depth_peeling_min_area
For internal use only.
Definition: BOpcodeHandler.h:3117
int GetColorFaceForcedLockValue() const
Definition: BOpcodeHandler.h:3702
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: BOpcodeHandler.h:1973
void SetLockMask(int m)
Definition: BOpcodeHandler.h:3224
void SetParameterSource(int p)
Definition: BOpcodeHandler.h:8286
char const * GetName() const
Definition: BOpcodeHandler.h:7821
""
Definition: BOpcodeHandler.h:5067
void SetValue(int v)
Definition: BOpcodeHandler.h:4628
char * m_image
Definition: BOpcodeHandler.h:8189
unsigned char m_transforms
for internal use only
Definition: BOpcodeHandler.h:5972
Handles the TKE_Line_Style opcode.
Definition: BOpcodeHandler.h:8560
choose or simulate a bold variation
Definition: BOpcodeHandler.h:5869
char m_options
Definition: BOpcodeHandler.h:8612
int GetApplicationMode() const
Definition: BOpcodeHandler.h:8343
TKO_Light_Options
Definition: BOpcodeHandler.h:6222
int m_curve_budget
For internal use only.
Definition: BOpcodeHandler.h:3052
float * GetRef2()
Definition: BOpcodeHandler.h:7508
""
Definition: BOpcodeHandler.h:5057
int GetColorWindowLockMask() const
Definition: BOpcodeHandler.h:3403
TKO_Texture_Param_Sources
Definition: BOpcodeHandler.h:8085
bool m_is_valid
internal use
Definition: BOpcodeHandler.h:6177
int m_name_length
Definition: BOpcodeHandler.h:8492
int GetLength()
Definition: BOpcodeHandler.h:5486
float m_value
for internal use only.
Definition: BOpcodeHandler.h:5184
refer to ::HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:5030
char * m_name
internal use: name
Definition: BOpcodeHandler.h:5244
void SetCaps(int f)
Definition: BOpcodeHandler.h:7424
////
Definition: BOpcodeHandler.h:920
void SetLodOptionsMask(int v)
Definition: BOpcodeHandler.h:4113
void SetPreferenceCutoff(float s)
Definition: BOpcodeHandler.h:6123
void SetNames(int length)
Definition: BOpcodeHandler.h:6014
void SetNURBSSurfaceBudget(int b)
Definition: BOpcodeHandler.h:4103
TK_Tag(unsigned char opcode=TKE_Tag)
Definition: BOpcodeHandler.h:1928
int GetOptions() const
Definition: BOpcodeHandler.h:6649
int m_count
for internal use only
Definition: BOpcodeHandler.h:5498
char * m_transform
Definition: BOpcodeHandler.h:8210
char * m_name
Definition: BOpcodeHandler.h:5666
char const * GetEmissionName() const
Definition: BOpcodeHandler.h:2182
char const * GetSegment() const
Definition: BOpcodeHandler.h:8546
texture interpolation value; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2561
for further expansion
Definition: BOpcodeHandler.h:5866
void SetOblique(float const o[])
Definition: BOpcodeHandler.h:5779
void SetSize(int const s[])
Definition: BOpcodeHandler.h:8025
short color_marker_value
For internal use only.
Definition: BOpcodeHandler.h:1377
clip region is to be specified in window space {[0..1],[0..1]}. Default is world space ...
Definition: BOpcodeHandler.h:8651
int GetVisibilityForcedLockValue() const
Definition: BOpcodeHandler.h:3656
void SetColorFaceLockValue(int v)
Definition: BOpcodeHandler.h:3294
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2597
unsigned char m_renumbered_scope
for internal use only
Definition: BOpcodeHandler.h:1607
int m_int
temporary
Definition: BOpcodeHandler.h:80
""
Definition: BOpcodeHandler.h:8097
clip region is to be specified in world space.
Definition: BOpcodeHandler.h:8650
short color_line_value
For internal use only.
Definition: BOpcodeHandler.h:1375
TK_Status Tag(BStreamFileToolkit &tk, int variant=-1) const
Definition: BOpcodeHandler.h:180
int GetSize() const
Definition: BOpcodeHandler.h:8938
int visibility_value
For internal use only.
Definition: BOpcodeHandler.h:1407
float * m_isoline_positions
for internal use only.
Definition: BOpcodeHandler.h:3017
int m_to_index
internal use
Definition: BOpcodeHandler.h:1769
TKO_Texture_Tilings
Definition: BOpcodeHandler.h:8130
TKO_Circular_Options
Definition: BOpcodeHandler.h:6887
TKO_Text_Region_Options
Definition: BOpcodeHandler.h:7590
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4499
refer to ::HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:5019
void SetDPoints(double const s[], double const e[])
Definition: BOpcodeHandler.h:6335
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2845
self-explanatory
Definition: BOpcodeHandler.h:6888
secondary extended bits
Definition: BOpcodeHandler.h:1230
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4514
mask corresponding to extended bit
Definition: BOpcodeHandler.h:1300
int GetEncoding() const
Definition: BOpcodeHandler.h:7837
static TK_Status GetData(BStreamFileToolkit &tk, unsigned int &i)
Definition: BOpcodeHandler.h:308
int GetAntiAlias() const
Definition: BOpcodeHandler.h:4456
char const * GetReference() const
Definition: BOpcodeHandler.h:8002
int GetSimpleShadowResolution() const
Definition: BOpcodeHandler.h:4320
char m_red_mapping
Definition: BOpcodeHandler.h:8201
void SetPosition(float x, float y, float z)
Definition: BOpcodeHandler.h:8007
int m_segment_length
Definition: BOpcodeHandler.h:8495
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1261
static TK_Status PutData(BStreamFileToolkit &tk, float const &f)
Definition: BOpcodeHandler.h:456
int GetLodNumRatios() const
Definition: BOpcodeHandler.h:4175
Handles the TKE_Texture opcode.
Definition: BOpcodeHandler.h:8185
type for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2819
HOOPS defualt font layout.
Definition: BOpcodeHandler.h:5884
int m_allocated
Definition: BOpcodeHandler.h:1481
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4525
TK_Status WriteAscii(BStreamFileToolkit &tk)
Deprecated.
unsigned char m_options
Definition: BOpcodeHandler.h:6514
Handles the TKE_Inlude_Segment TKE_Named_Style and TKE_Style_Segment opcodes.
Definition: BOpcodeHandler.h:1596
TK_Clip_Region()
Definition: BOpcodeHandler.h:8674
self-explanatory
Definition: BOpcodeHandler.h:7849
int GetColorFaceLockMask() const
Definition: BOpcodeHandler.h:3288
void SetNURBSOptionsValue(int v)
Definition: BOpcodeHandler.h:4091
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1212
void SetColorWindowContrastLockMask(int m)
Definition: BOpcodeHandler.h:3444
void SetMirror(float r, float g, float b)
Definition: BOpcodeHandler.h:2142
""
Definition: BOpcodeHandler.h:8094
int m_length
Definition: BOpcodeHandler.h:5665
int GetVisibilityForcedLockMask() const
Definition: BOpcodeHandler.h:3645
void SetFogLimits(float const l[])
Definition: BOpcodeHandler.h:3218
float const * GetTarget() const
Definition: BOpcodeHandler.h:5719
void SetValue(int v0, int v1=0, int v2=0)
Definition: BOpcodeHandler.h:3161
refer to ::HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:5034
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5096
void SetRef1(float x, float y, float z)
Definition: BOpcodeHandler.h:7489
TK_Close_Segment()
Definition: BOpcodeHandler.h:1540
int GetColorTextForcedLockMask() const
Definition: BOpcodeHandler.h:3783
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4492
int GetColorWindowContrastForcedLockValue() const
Definition: BOpcodeHandler.h:3863
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2656
TK_Unicode_Options()
Definition: BOpcodeHandler.h:5465
refer to ::HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:5014
the name of the font (i.e. which font to use)
Definition: BOpcodeHandler.h:5847
float const * GetValue() const
Definition: BOpcodeHandler.h:2323
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1228
float const * GetViewVolume() const
Definition: BOpcodeHandler.h:4705
char const * GetLoggingString() const
Definition: BOpcodeHandler.h:232
short color_edge_mask
For internal use only.
Definition: BOpcodeHandler.h:1372
void SetGeometry(int m)
Definition: BOpcodeHandler.h:4892
HT_NURBS_Trim * GetNext(void)
Definition: BOpcodeHandler.h:6547
for further expansion
Definition: BOpcodeHandler.h:5865
float * GetLodThresholds()
Definition: BOpcodeHandler.h:4201
void SetColorLineContrastLockValue(int v)
Definition: BOpcodeHandler.h:3547
int m_index
internal use: simple value for recognised old forms
Definition: BOpcodeHandler.h:5245
type for 'buffer options' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2794
void Set_General_Flags(int f)
Definition: BOpcodeHandler.h:168
""
Definition: BOpcodeHandler.h:5062
float const * GetOblique() const
Definition: BOpcodeHandler.h:5781
int m_mask
internal use
Definition: BOpcodeHandler.h:2223
the size tolerance outside of which fonts must be regenerated
Definition: BOpcodeHandler.h:5849
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2905
////
Definition: BOpcodeHandler.h:930
void SetDAxis(double x1, double y1, double z1, double x2, double y2, double z2)
Definition: BOpcodeHandler.h:7284
int GetColorVertexForcedLockMask() const
Definition: BOpcodeHandler.h:3898
float m_gloss
internal use
Definition: BOpcodeHandler.h:2057
replace with a grid of lines
Definition: BOpcodeHandler.h:5937
""
Definition: BOpcodeHandler.h:5069
Handles the TKE_LOD opcode.
Definition: BOpcodeHandler.h:1822
double const * GetDPosition() const
Definition: BOpcodeHandler.h:6783
void SetColorFaceContrastLockMask(int m)
Definition: BOpcodeHandler.h:3421
don't draw
Definition: BOpcodeHandler.h:5936
type for 'mask transform' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2768
char const * GetBumpName() const
Definition: BOpcodeHandler.h:2200
self-explanatory
Definition: BOpcodeHandler.h:1314
int GetGeneralDisplacement() const
Definition: BOpcodeHandler.h:3208
shift of extended section
Definition: BOpcodeHandler.h:2760
int GetGreekingMode() const
Definition: BOpcodeHandler.h:6088
self-explanatory
Definition: BOpcodeHandler.h:1318
unsigned char m_layout
for internal use only
Definition: BOpcodeHandler.h:5975
short color_edge_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:1391
float * GetPoints()
Definition: BOpcodeHandler.h:8695
character rotation, specified in degrees
Definition: BOpcodeHandler.h:5851
limit at which text may be replaced with a crude representation
Definition: BOpcodeHandler.h:5867
void SetString(char const *string)
Definition: BOpcodeHandler.h:7694
void SetDPosition(double x, double y, double z)
Definition: BOpcodeHandler.h:7715
TK_Bounding(unsigned char opcode, float min[], float max[])
Definition: BOpcodeHandler.h:6183
void SetOptions(int o)
Definition: BOpcodeHandler.h:6817
int m_max_degree
For internal use only.
Definition: BOpcodeHandler.h:3042
void SetLodRatios(int c, float const r[]=0)
Definition: BOpcodeHandler.h:4166
float GetNearLimit() const
Definition: BOpcodeHandler.h:5791
mask for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2817
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2674
TK_Font()
Definition: BOpcodeHandler.h:7784
float m_simple_reflection_yon
For internal use only.
Definition: BOpcodeHandler.h:3101
char * GetEnvironmentName()
Definition: BOpcodeHandler.h:2193
float const * GetStart() const
Definition: BOpcodeHandler.h:6963
float * GetPoints()
Definition: BOpcodeHandler.h:6387
int GetValue() const
Definition: BOpcodeHandler.h:6009
float const * GetPoints() const
Definition: BOpcodeHandler.h:7375
Does not handle any top level opcodes, but rather only the trim types allowable on nurbs surfaces...
Definition: BOpcodeHandler.h:6503
int GetColorLineContrastForcedLockValue() const
Definition: BOpcodeHandler.h:3955
void SetColorLineLockMask(int m)
Definition: BOpcodeHandler.h:3329
void SetValue(float a, float b, float c)
Definition: BOpcodeHandler.h:2317
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2880
transform position adjusted
Definition: BOpcodeHandler.h:5906
void SetLayout(int l)
Definition: BOpcodeHandler.h:6133
float * GetPoints()
Definition: BOpcodeHandler.h:6698
TK_Conditions()
Definition: BOpcodeHandler.h:5320
double GetDRadius() const
Definition: BOpcodeHandler.h:7197
unsigned char m_tessellations
For internal use only.
Definition: BOpcodeHandler.h:3067
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2879
text size is adjusted to fit
Definition: BOpcodeHandler.h:7608
void SetDTarget(double x, double y, double z)
Definition: BOpcodeHandler.h:5724
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2641
void SetNURBSOptionsMask(int m)
Definition: BOpcodeHandler.h:4083
color interpolation value; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2566
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2877
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2675
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2630
self-explanatory
Definition: BOpcodeHandler.h:1338
channel m_mirror
internal use
Definition: BOpcodeHandler.h:2052
int GetOptions() const
Definition: BOpcodeHandler.h:6559
void SetColorLineContrastForcedLockValue(int v)
Definition: BOpcodeHandler.h:3950
double const * GetDPoints() const
Definition: BOpcodeHandler.h:7398
char const * GetMirrorName() const
Definition: BOpcodeHandler.h:2152
int GetLodNumLevels() const
Definition: BOpcodeHandler.h:4131
float m_curve_max_angle
For internal use only.
Definition: BOpcodeHandler.h:3060
self-explanatory
Definition: BOpcodeHandler.h:1312
float GetWidthScale() const
Definition: BOpcodeHandler.h:6053
void SetMajor(float const m[])
Definition: BOpcodeHandler.h:7062
type for transparency field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2702
horizontal fitting is specified
Definition: BOpcodeHandler.h:7596
void GetUpVector(float u[]) const
Definition: BOpcodeHandler.h:5741
float * m_knots
Definition: BOpcodeHandler.h:6516
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2626
unsigned short m_mask_transform
For internal use only.
Definition: BOpcodeHandler.h:3109
double * m_dcontrol_points
Definition: BOpcodeHandler.h:6587
void SetOrtho(float x, float y, float z)
Definition: BOpcodeHandler.h:7173
void SetDTarget(double const t[])
Definition: BOpcodeHandler.h:6797
TK_Color_By_Value()
Definition: BOpcodeHandler.h:2281
void SetEnd(float e)
Definition: BOpcodeHandler.h:6470
float const * GetSimpleShadowColor() const
Definition: BOpcodeHandler.h:4351
ID_Key m_this_key
for internal use only
Definition: BOpcodeHandler.h:1697
Handles the TKE_Callback opcode.
Definition: BOpcodeHandler.h:2516
char const * GetString() const
Definition: BOpcodeHandler.h:8976
""
Definition: BOpcodeHandler.h:5074
int GetPreferenceCutoffUnits() const
Definition: BOpcodeHandler.h:6130
void SetDRadius(double radius)
Definition: BOpcodeHandler.h:7408
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4526
void SetMiddle(float const m[])
Definition: BOpcodeHandler.h:6935
char * GetName()
Definition: BOpcodeHandler.h:8590
void SetCulling(int c)
Definition: BOpcodeHandler.h:4658
refer to ::HC_Set_Marker_Symbol
Definition: BOpcodeHandler.h:5038
TK_File_Info()
Definition: BOpcodeHandler.h:1042
unsigned char m_space_units
for internal use only
Definition: BOpcodeHandler.h:5969
void GetDField(double f[]) const
Definition: BOpcodeHandler.h:5769
type for transparency field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2699
float GetRotation() const
Definition: BOpcodeHandler.h:6043
char * m_name
Definition: BOpcodeHandler.h:8445
type for 'shadow map' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2740
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1236
void SetTransmission(float r, float g, float b)
Definition: BOpcodeHandler.h:2157
HT_NURBS_Trim * m_trims
Definition: BOpcodeHandler.h:6592
unsigned char m_region_options
Definition: BOpcodeHandler.h:7667
self-explanatory
Definition: BOpcodeHandler.h:7572
void SetVisibilityLockMask(int m)
Definition: BOpcodeHandler.h:3237
double const * GetDUpVector() const
Definition: BOpcodeHandler.h:5749
Handles the TKE_Open_Segment opcode.
Definition: BOpcodeHandler.h:1478
int GetColorEdgeLockValue() const
Definition: BOpcodeHandler.h:3322
float m_stereo_separation
For internal use only.
Definition: BOpcodeHandler.h:3064
int m_name_length
internal use: length of name
Definition: BOpcodeHandler.h:5243
refer to ::HC_Set_Heuristics for description
Definition: BOpcodeHandler.h:4560
double m_dradius
Definition: BOpcodeHandler.h:7128
int GetType() const
Definition: BOpcodeHandler.h:7557
int m_debug
For internal use only.
Definition: BOpcodeHandler.h:2987
""
Definition: BOpcodeHandler.h:5075
float m_extra_space
for internal use only
Definition: BOpcodeHandler.h:5960
void SetLookup(char const *string)
Definition: BOpcodeHandler.h:7826
""
Definition: BOpcodeHandler.h:8059
type for HSR field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2685
double * GetDPoints()
Definition: BOpcodeHandler.h:6395
void SetIndices(int count)
Definition: BOpcodeHandler.h:5574
void SetOptions(int o)
Definition: BOpcodeHandler.h:8791
void SetMinor(float x, float y, float z)
Definition: BOpcodeHandler.h:7067
""
Definition: BOpcodeHandler.h:5041
float GetExtraSpace() const
Definition: BOpcodeHandler.h:6058
//// pseudo-handler (non-zero value)
Definition: BOpcodeHandler.h:951
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2857
void SetMaskTransform(int m)
Definition: BOpcodeHandler.h:4272
void SetOptions(int o)
Definition: BOpcodeHandler.h:6473
float * GetWeights()
Definition: BOpcodeHandler.h:6464
extended bits for common/shared items
Definition: BOpcodeHandler.h:1201
static TK_Status PutData(BStreamFileToolkit &tk, unsigned char const &b)
Definition: BOpcodeHandler.h:447
int GetFlags()
Definition: BOpcodeHandler.h:1060
self-explanatory
Definition: BOpcodeHandler.h:6727
char * GetDiffuseName()
Definition: BOpcodeHandler.h:2124
float GetOrderedWeight(int index) const
Definition: BOpcodeHandler.h:4729
void SetStart(float s)
Definition: BOpcodeHandler.h:6468
TK_Character_Attribute * m_character_attributes
Definition: BOpcodeHandler.h:7672
type for 'shadow map' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2744
refer to ::HC_Set_Geometry_Options
Definition: BOpcodeHandler.h:4754
int GetDefinitionSize() const
Definition: BOpcodeHandler.h:8476
TK_Reopen_Segment()
Definition: BOpcodeHandler.h:1571
""
Definition: BOpcodeHandler.h:5063
void SetAlphaMapping(int p)
Definition: BOpcodeHandler.h:8316
the character size
Definition: BOpcodeHandler.h:7617
short color_marker_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:1394
self-explanatory
Definition: BOpcodeHandler.h:1325
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: BOpcodeHandler.h:1049
TK_Area_Light()
Definition: BOpcodeHandler.h:6677
""
Definition: BOpcodeHandler.h:5053
int m_simple_reflection_visibility_mask
For internal use only.
Definition: BOpcodeHandler.h:3102
TK_Cylinder()
Definition: BOpcodeHandler.h:7251
int GetColorMarkerContrastLockValue() const
Definition: BOpcodeHandler.h:3575
float const * GetMirror() const
Definition: BOpcodeHandler.h:2150
Handles the TKE_Geometry_Attributes opcode.
Definition: BOpcodeHandler.h:1868
type for transparency field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2697
int m_length
Definition: BOpcodeHandler.h:9030
unsigned char m_optionals
Definition: BOpcodeHandler.h:6418
int m_gooch_color_map_segment_length
Definition: BOpcodeHandler.h:3076
""
Definition: BOpcodeHandler.h:5066
Handles the TKE_Sphere opcode.
Definition: BOpcodeHandler.h:7120
extra spacing between lines
Definition: BOpcodeHandler.h:5858
channel m_emission
internal use
Definition: BOpcodeHandler.h:2054
static TK_Status GetData(BStreamFileToolkit &tk, double &d)
Definition: BOpcodeHandler.h:314
refer to ::HC_Set_Visibility
Definition: BOpcodeHandler.h:5127
""
Definition: BOpcodeHandler.h:5049
""
Definition: BOpcodeHandler.h:8174
float m_curve_max_deviation
For internal use only.
Definition: BOpcodeHandler.h:3061
int m_name_length
Definition: BOpcodeHandler.h:8191
type for 'cut geometry' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2711
void SetRef2(float const r[])
Definition: BOpcodeHandler.h:7504
float const * GetSpecular() const
Definition: BOpcodeHandler.h:2135
void SetOptions(int o)
Definition: BOpcodeHandler.h:8713
TK_User_Index()
Definition: BOpcodeHandler.h:5507
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4528
unsigned char m_renderer_cutoff_units
for internal use only
Definition: BOpcodeHandler.h:5973
float const * GetMajor() const
Definition: BOpcodeHandler.h:7064
TKO_Texture_Layouts
Definition: BOpcodeHandler.h:8119
short m_options
Definition: BOpcodeHandler.h:5365
////
Definition: BOpcodeHandler.h:927
Handles the TKE_User_Index opcode.
Definition: BOpcodeHandler.h:5496
short color_simple_reflection_value
For internal use only.
Definition: BOpcodeHandler.h:1401
""
Definition: BOpcodeHandler.h:8164
int GetOptions() const
Definition: BOpcodeHandler.h:6474
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2850
short color_window_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:1384
unsigned char m_num_levels
For internal use only.
Definition: BOpcodeHandler.h:3041
TK_Renumber(unsigned char opcode, ID_Key key=0)
Definition: BOpcodeHandler.h:1902
double * GetDPoints()
Definition: BOpcodeHandler.h:6459
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1206
void SetExtraSpaceUnits(int u)
Definition: BOpcodeHandler.h:6061
void SetDPosition(double x, double y, double z)
Definition: BOpcodeHandler.h:8015
int m_mask
internal use
Definition: BOpcodeHandler.h:2385
TKO_Geometry_Options
Definition: BOpcodeHandler.h:4752
double const * GetDStart() const
Definition: BOpcodeHandler.h:7295
refer to ::HC_Set_Heuristics for description
Definition: BOpcodeHandler.h:4563
float m_tolerance
For internal use only.
Definition: BOpcodeHandler.h:3043
Definition: BStream.h:281
void SetGreekingMode(int m)
Definition: BOpcodeHandler.h:6086
TKO_Actions
Definition: BOpcodeHandler.h:5348
double const * GetDEnd() const
Definition: BOpcodeHandler.h:7297
int m_data_size
Definition: BOpcodeHandler.h:7932
int GetCutGeometry() const
Definition: BOpcodeHandler.h:4280
unsigned char vertical_offset_units
specified with enum TKO_Font_Size_Units
Definition: BOpcodeHandler.h:7646
self-explanatory
Definition: BOpcodeHandler.h:7584
type for contour options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2838
void SetColorMarkerContrastLockValue(int v)
Definition: BOpcodeHandler.h:3570
int GetOptions() const
Definition: BOpcodeHandler.h:5401
""
Definition: BOpcodeHandler.h:5056
static TK_Status GetData(BStreamFileToolkit &tk, unsigned short *s, int n)
Definition: BOpcodeHandler.h:287
type for 'cut geometry' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2717
void SetDMatrix(double const m[])
Definition: BOpcodeHandler.h:4988
self-explanatory
Definition: BOpcodeHandler.h:7848
unsigned char m_options
Definition: BOpcodeHandler.h:7666
Definition: BOpcodeHandler.h:964
char * m_condition
Definition: BOpcodeHandler.h:1603
refer to ::HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:5006
Handles the TKE_Image opcode.
Definition: BOpcodeHandler.h:7924
self-explanatory; (internal note: keep this listed last)
Definition: BOpcodeHandler.h:5172
type for 'quantization' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2789
void SetPlane(float const p[])
Definition: BOpcodeHandler.h:6865
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5105
int GetSimpleShadowBlur() const
Definition: BOpcodeHandler.h:4315
void SetInternalPolylineSelectionLimit(int i)
Definition: BOpcodeHandler.h:4648
float * GetPoints()
Definition: BOpcodeHandler.h:8760
Handles the TKE_Font opcode.
Definition: BOpcodeHandler.h:7760
virtual TK_Status Read(BStreamFileToolkit &tk)=0
Handles the TKE_Unicode_Options opcode.
Definition: BOpcodeHandler.h:5458
int * GetIndices()
Definition: BOpcodeHandler.h:5530
void SetView(int length)
Definition: BOpcodeHandler.h:5803
int GetShadowMap() const
Definition: BOpcodeHandler.h:4362
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2917
Internal_Translator::Index_Key_Pair * m_item
internal use; cache lookup in Pending cases
Definition: BOpcodeHandler.h:1959
float m_inner
for internal use only
Definition: BOpcodeHandler.h:6753
TK_Status Read(BStreamFileToolkit &)
Definition: BOpcodeHandler.h:1411
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4491
color by index
Definition: BOpcodeHandler.h:1356
float * m_weights
Definition: BOpcodeHandler.h:6424
void SetCenter(float const c[])
Definition: BOpcodeHandler.h:6952
""
Definition: BOpcodeHandler.h:8054
texture interpolation value; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2564
void SetCutGeometryColorMatch(int m)
Definition: BOpcodeHandler.h:4288
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2874
void SetPoints(int count, float const points[]=0)
Definition: BOpcodeHandler.h:6694
refer to ::HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:5031
void SetDCenter(double const s[])
Definition: BOpcodeHandler.h:7189
void SetDTarget(double x, double y, double z)
Definition: BOpcodeHandler.h:6794
type for 'antialias' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2799
int const * GetIndices() const
Definition: BOpcodeHandler.h:5528
type for transparency field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2694
int GetInternalShellSelectionLimit() const
Definition: BOpcodeHandler.h:4645
void SetProjection(int p)
Definition: BOpcodeHandler.h:5795
int GetAlphaMapping() const
Definition: BOpcodeHandler.h:8318
room for expansion
Definition: BOpcodeHandler.h:7627
Handles the TKE_File_Info opcode.
Definition: BOpcodeHandler.h:1035
TK_Status PutOpcode(BStreamFileToolkit &tk, int adjust=1)
Definition: BOpcodeHandler.h:462
BBaseOpcodeHandler * m_current_object
internal use
Definition: BOpcodeHandler.h:1009
not sapecified
Definition: BOpcodeHandler.h:5914
float m_end
Definition: BOpcodeHandler.h:6427
double const * GetDPosition() const
Definition: BOpcodeHandler.h:7720
Handles the TKE_Color opcode.
Definition: BOpcodeHandler.h:2028
""
Definition: BOpcodeHandler.h:5086
double * GetDPoints()
Definition: BOpcodeHandler.h:6708
void SetColorWindowLockValue(int v)
Definition: BOpcodeHandler.h:3409
TKO_Font_Transforms
Definition: BOpcodeHandler.h:5903
Handles the TKE_Heuristics opcode.
Definition: BOpcodeHandler.h:4576
int m_value
specifies what values to set for boolean options. For internal use only.
Definition: BOpcodeHandler.h:5952
Definition: BOpcodeHandler.h:1364
double const * GetDCenter() const
Definition: BOpcodeHandler.h:7191
void SetSimpleShadowLight(float x, float y, float z)
Definition: BOpcodeHandler.h:4323
unsigned char m_simple_shadow_blur
For internal use only.
Definition: BOpcodeHandler.h:3085
char m_decimation
Definition: BOpcodeHandler.h:8200
void SetTessellationMask(int m)
Definition: BOpcodeHandler.h:4223
type for 'simple shadow' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2728
void SetFormat(int f)
Definition: BOpcodeHandler.h:8427
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2862
int GetSimpleReflectionVisibilityValue() const
Definition: BOpcodeHandler.h:4400
lighting interpolation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2652
char m_threshold_type
For internal use only.
Definition: BOpcodeHandler.h:3038
Handles the TKE_Circle, TKE_Circular_Arc, TKE_Circular_Chord and TKE_Circular_Wedge opcodes...
Definition: BOpcodeHandler.h:6899
character is skipped
Definition: BOpcodeHandler.h:7619
self-explanatory
Definition: BOpcodeHandler.h:1330
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4475
int GetForcedLockMask() const
Definition: BOpcodeHandler.h:3629
int GetColorWindowContrastLockMask() const
Definition: BOpcodeHandler.h:3449
int GetBlueMapping() const
Definition: BOpcodeHandler.h:8313
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4495
int const * GetSize() const
Definition: BOpcodeHandler.h:8027
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4490
int * GetIndices()
Definition: BOpcodeHandler.h:5583
void SetHlrLinePattern(int p)
Definition: BOpcodeHandler.h:4073
short color_window_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:1385
int GetColorEdgeForcedLockMask() const
Definition: BOpcodeHandler.h:3714
void SetSlant(float s)
Definition: BOpcodeHandler.h:6046
extra item for selectability; refer to ::HC_Set_Selectability for a description
Definition: BOpcodeHandler.h:1247
void SetViewVolume(float const v[])
Definition: BOpcodeHandler.h:4716
type for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2829
void SetVectorTolerance(float tol)
Definition: BOpcodeHandler.h:4698
void SetVisibilityForcedLockMask(int m)
Definition: BOpcodeHandler.h:3640
int GetCount() const
Definition: BOpcodeHandler.h:8709
char * GetName()
Definition: BOpcodeHandler.h:7995
float GetSlant() const
Definition: BOpcodeHandler.h:6048
TKO_Rendering_Option_Bits
Definition: BOpcodeHandler.h:2560
refer to ::HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:5018
void SetSimpleShadowLight(float const l[])
Definition: BOpcodeHandler.h:4329
void set_points(int count, float const points[]=0)
Definition: BOpcodeHandler.h:6363
void SetDPosition(double const p[])
Definition: BOpcodeHandler.h:6781
int GetColorBackForcedLockMask() const
Definition: BOpcodeHandler.h:3875
short color_face_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:1382
Definition: BStream.h:255
type for 'cut geometry' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2721
TK_Bounding(unsigned char opcode)
Definition: BOpcodeHandler.h:6180
limit font source
Definition: BOpcodeHandler.h:5871
type for 'technology' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2786
Instance_Options
Definition: BOpcodeHandler.h:1751
int GetWhenInvisible() const
Definition: BOpcodeHandler.h:4956
refer to ::HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:5010
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2859
""
Definition: BOpcodeHandler.h:5078
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4479
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2611
""
Definition: BOpcodeHandler.h:8060
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1251
TK_Compression(char opcode)
Definition: BOpcodeHandler.h:1172
void SetColorFaceContrastForcedLockMask(int m)
Definition: BOpcodeHandler.h:3824
Definition: BOpcodeHandler.h:5214
float * GetPoints()
Definition: BOpcodeHandler.h:6555
""
Definition: BOpcodeHandler.h:5040
float m_rotation
for internal use only
Definition: BOpcodeHandler.h:5957
char * GetNames()
Definition: BOpcodeHandler.h:6018
extended bit
Definition: BOpcodeHandler.h:1294
unsigned char m_greeking_units
for internal use only
Definition: BOpcodeHandler.h:5970
TK_Size(unsigned char opcode)
Definition: BOpcodeHandler.h:5189
refer to ::HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:5008
int GetWriteFlags(int mask=~0) const
Definition: BStreamFileToolkit.h:933
void SetIndices(int count, int const indices[], void const *values[], int const sizes[])
Definition: BOpcodeHandler.h:5569
type for 'antialias' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2801
TK_XML()
Definition: BOpcodeHandler.h:8911
void SetLodClamp(int v)
Definition: BOpcodeHandler.h:4133
static TK_Status PutData(BStreamFileToolkit &tk, unsigned int const &i)
Definition: BOpcodeHandler.h:453
void SetFogLimits(float n, float f)
Definition: BOpcodeHandler.h:3216
void SetQuantization(int q)
Definition: BOpcodeHandler.h:3186
extended bit for HLR suboptions; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2825
double const * GetDMiddle() const
Definition: BOpcodeHandler.h:7014
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4502
char m_lod_algorithm
For internal use only.
Definition: BOpcodeHandler.h:3033
void SetMirrorName(char const *name)
Definition: BOpcodeHandler.h:2146
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1264
refer to ::HC_Define_Texture
Definition: BOpcodeHandler.h:8173
Handles the TKE_URL opcodes.
Definition: BOpcodeHandler.h:8950
Handles the TKE_Area_Light opcode.
Definition: BOpcodeHandler.h:6665
int GetMask() const
Definition: BOpcodeHandler.h:6004
float const * GetImageScale() const
Definition: BOpcodeHandler.h:4434
void SetOrigin(float const o[])
Definition: BOpcodeHandler.h:7482
void SetSimpleReflectionOpacity(float o)
Definition: BOpcodeHandler.h:4393
int GetIndex()
Definition: BOpcodeHandler.h:1811
char * GetShaderSource()
Definition: BOpcodeHandler.h:8256
double const * GetDRef2() const
Definition: BOpcodeHandler.h:7540
void SetNURBSSurfaceTrimBudget(int b)
Definition: BOpcodeHandler.h:4107
int GetVertexDisplacement() const
Definition: BOpcodeHandler.h:3203
Handles the TKE_Cutting_Plane opcode.
Definition: BOpcodeHandler.h:6829
float const * GetPosition() const
Definition: BOpcodeHandler.h:5699
self-explanatory
Definition: BOpcodeHandler.h:1341
int GetColorLineLockValue() const
Definition: BOpcodeHandler.h:3345
float * GetUKnots()
Definition: BOpcodeHandler.h:6640
void SetSelectionLevel(int l)
Definition: BOpcodeHandler.h:4736
int GetRedMapping() const
Definition: BOpcodeHandler.h:8303
int GetDisplayListLevel() const
Definition: BOpcodeHandler.h:4301
refer to ::HC_Set_Heuristics for description
Definition: BOpcodeHandler.h:4559
virtual TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, int variant=0)
int GetColorVertexContrastLockMask() const
Definition: BOpcodeHandler.h:3587
void SetDPosition(double const p[])
Definition: BOpcodeHandler.h:5707
int GetOptions() const
Definition: BOpcodeHandler.h:8793
type for NURBS curve options; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2921
void SetLodThresholdType(int v)
Definition: BOpcodeHandler.h:4182
type for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2815
""
Definition: BOpcodeHandler.h:8088
void SetName(int length)
Definition: BOpcodeHandler.h:8243
TK_Callback()
Definition: BOpcodeHandler.h:2528
int const * GetPreferences() const
Definition: BOpcodeHandler.h:6120
float const * GetKnots() const
Definition: BOpcodeHandler.h:6465
TK_Complex_Clip_Region()
Definition: BOpcodeHandler.h:8738
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4494
TKO_Font_Layout
Definition: BOpcodeHandler.h:5882
void SetBlueMapping(int p)
Definition: BOpcodeHandler.h:8311
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2666
try to use bitmaps
Definition: BOpcodeHandler.h:5927
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1254
int GetParameterOffset() const
Definition: BOpcodeHandler.h:8348
extended bit for HLR suboptions; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2823
Handles the TKE_Named_Style_Def opcode.
Definition: BOpcodeHandler.h:8490
double * GetDRef1()
Definition: BOpcodeHandler.h:7531
void **const GetValues() const
Definition: BOpcodeHandler.h:5586
int GetLodOptionsValue() const
Definition: BOpcodeHandler.h:4119
int GetColorVertexContrastForcedLockValue() const
Definition: BOpcodeHandler.h:4001
float m_surface_max_facet_deviation
For internal use only.
Definition: BOpcodeHandler.h:3058
hard edge angle limit; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2949
int GetTargetVersion() const
Definition: BStreamFileToolkit.h:986
""
Definition: BOpcodeHandler.h:8146
void SetScreenRange(float l, float r, float b, float t)
Definition: BOpcodeHandler.h:4412
int m_allocated
internal use
Definition: BOpcodeHandler.h:1078
float const * GetRef1() const
Definition: BOpcodeHandler.h:7495
float GetRendererCutoff() const
Definition: BOpcodeHandler.h:6104
float GetLodTolerance() const
Definition: BOpcodeHandler.h:4143
perspective projection
Definition: BOpcodeHandler.h:5636
float m_greeking_limit
for internal use only
Definition: BOpcodeHandler.h:5962
int GetColorBackLockMask() const
Definition: BOpcodeHandler.h:3472
int GetColorFaceContrastLockMask() const
Definition: BOpcodeHandler.h:3426
float GetVectorTolerance() const
Definition: BOpcodeHandler.h:4696
float const * GetEndNormal(int index) const
Definition: BOpcodeHandler.h:7441
void SetField(float const f[])
Definition: BOpcodeHandler.h:5756
int GetIndex() const
Definition: BOpcodeHandler.h:1583
void SetBytes(int size, char const *bytes=0, unsigned char data_format=TKO_Compression_None)
Definition: BOpcodeHandler.h:7980
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4481
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2867
char const * GetConditions() const
Definition: BOpcodeHandler.h:5337
unsigned short const * GetOptions() const
Definition: BOpcodeHandler.h:5482
void SetIndex(float i)
Definition: BOpcodeHandler.h:2209
char * GetConditions()
Definition: BOpcodeHandler.h:5339
extended bits for color
Definition: BOpcodeHandler.h:1216
void SetMatrix(float const m[])
Definition: BOpcodeHandler.h:4984
Handles the TKE_Renumber_Key_Global, TKE_Renumber_Key_Local, and TKE_Priority opcodes.
Definition: BOpcodeHandler.h:1894
float slant
the angle (in degrees) that text is slanted (e.g. for italic). Positive numbers correspond to clockwi...
Definition: BOpcodeHandler.h:7638
try to use polygonal (outline) representations
Definition: BOpcodeHandler.h:5928
HSR algorithm; refer to ::HC_Set_Rendering_Options for description.
Definition: BOpcodeHandler.h:2585
Handles the TKE_Complex_Clip_Region opcodes.
Definition: BOpcodeHandler.h:8727
void SetShadowMapSamples(int m)
Definition: BOpcodeHandler.h:4370
void SetOptions(int o)
Definition: BOpcodeHandler.h:6282
char * m_string
Definition: BOpcodeHandler.h:8993
short color_back_value
For internal use only.
Definition: BOpcodeHandler.h:1387
unsigned char m_present
internal use
Definition: BOpcodeHandler.h:1956
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4540
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2602
lighting interpolation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2579
void SetDecimation(int p)
Definition: BOpcodeHandler.h:8296
void SetName(int length)
Definition: BOpcodeHandler.h:7991
void SetName(char const *string)
Definition: BOpcodeHandler.h:7817
char const * GetDefinition() const
Definition: BOpcodeHandler.h:8597
hard edge angle limit; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2946
int GetInterpolation() const
Definition: BOpcodeHandler.h:8293
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2672
adjustment to character width
Definition: BOpcodeHandler.h:7622
unsigned char m_preference_cutoff_units
for internal use only
Definition: BOpcodeHandler.h:5974
char const * GetCallback() const
Definition: BOpcodeHandler.h:2545
TK_User_Options()
Definition: BOpcodeHandler.h:5425
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2612
unsigned char m_region_fit
Definition: BOpcodeHandler.h:7668
double * m_dpoints
Definition: BOpcodeHandler.h:6360
shift of extended section
Definition: BOpcodeHandler.h:2778
int m_selection_culling
internal use; selection culling options
Definition: BOpcodeHandler.h:4587
float m_line_spacing
for internal use only
Definition: BOpcodeHandler.h:5961
refer to ::HC_Define_Texture
Definition: BOpcodeHandler.h:8109
TK_Color_By_FIndex()
Definition: BOpcodeHandler.h:2390
char * GetName()
Definition: BOpcodeHandler.h:8531
type for NURBS curve options; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2927
//// first opcode value reserved for private use
Definition: BOpcodeHandler.h:947
float rotation
the angle (in degrees) that text is rotated
Definition: BOpcodeHandler.h:7639
void SetField(float w, float h)
Definition: BOpcodeHandler.h:5754
int GetCount() const
Definition: BOpcodeHandler.h:5577
int m_down
internal use; specifies what geometry is selectable on mouse button down. For internal use only...
Definition: BOpcodeHandler.h:4870
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4522
unsigned short * GetOptions()
Definition: BOpcodeHandler.h:5484
""
Definition: BOpcodeHandler.h:8065
char * GetCallback()
Definition: BOpcodeHandler.h:2547
refer to ::HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:5027
float const * GetVector() const
Definition: BOpcodeHandler.h:4686
void SetPosition(float x, float y, float z)
Definition: BOpcodeHandler.h:7707
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2871
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2640
int GetSize() const
Definition: BOpcodeHandler.h:2011
int GetDown() const
Definition: BOpcodeHandler.h:4912
type for 'buffer options' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2797
bool Find_Item(BStreamFileToolkit &tk, ID_Key key) const
Definition: BOpcodeHandler.h:675
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4501
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4553
void SetHardExtent(int c)
Definition: BOpcodeHandler.h:4682
char const * GetSphereTessellations() const
Definition: BOpcodeHandler.h:4257
static void fix_in(float *f, int n)
for internal use only
Definition: BOpcodeHandler.h:548
self-explanatory
Definition: BOpcodeHandler.h:1328
float m_rgb[3]
The RGB value of the color for this channel.
Definition: BOpcodeHandler.h:2038
int GetGeometry() const
Definition: BOpcodeHandler.h:4844
TK_Spot_Light()
Definition: BOpcodeHandler.h:6759
refer to ::HC_Set_Heuristics for description
Definition: BOpcodeHandler.h:4561
void SetImageTintColor(float const rgb[])
Definition: BOpcodeHandler.h:4441
for further expansion
Definition: BOpcodeHandler.h:5864
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2884
void SetOuter(float o)
Definition: BOpcodeHandler.h:6802
type for NURBS curve options; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2922
void SetSize(int size)
Definition: BOpcodeHandler.h:2009
void SetVector(float x, float y, float z)
Definition: BOpcodeHandler.h:4688
region is a mask region
Definition: BOpcodeHandler.h:8654
compress on load to graphics hardware
Definition: BOpcodeHandler.h:7865
float GetHlrDimFactor() const
Definition: BOpcodeHandler.h:4067
float m_compression_quality
Definition: BOpcodeHandler.h:7942
TKO_Text_Options
Definition: BOpcodeHandler.h:7582
void SetPosition(float const p[])
Definition: BOpcodeHandler.h:7710
TKO_Color_Channel_Lock_Bits
Definition: BOpcodeHandler.h:1349
short color_face_mask
For internal use only.
Definition: BOpcodeHandler.h:1370
void SetParameterFunction(int p)
Definition: BOpcodeHandler.h:8321
BBaseOpcodeHandler *** m_primitives
for each level, an array of opcode handler pointers that store the primitives
Definition: BOpcodeHandler.h:1825
void SetUpVector(float x, float y, float z)
Definition: BOpcodeHandler.h:5734
int m_camera_length
Definition: BOpcodeHandler.h:8194
int m_to_variant
internal use
Definition: BOpcodeHandler.h:1770
mask of bits in second byte
Definition: BOpcodeHandler.h:2930
Handles the TKE_XML opcode.
Definition: BOpcodeHandler.h:8904
double const * GetDPosition() const
Definition: BOpcodeHandler.h:8020
ID_Key remove_segment(BStreamFileToolkit &tk)
for internal use only
Definition: BOpcodeHandler.h:634
TK_Terminator(char opcode, bool is_file_terminator=true)
Definition: BOpcodeHandler.h:1143
short color_line_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:1392
char * m_bytes
Definition: BOpcodeHandler.h:7926
Handles the TKE_External_Reference opcodes.
Definition: BOpcodeHandler.h:8989
Definition: BOpcodeHandler.h:5139
TK_Material()
Definition: BOpcodeHandler.h:8886
int GetSimpleReflection() const
Definition: BOpcodeHandler.h:4378
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:8076
int m_allocated
Definition: BOpcodeHandler.h:6358
TK_Bounding(unsigned char opcode, float center[], float radius)
Definition: BOpcodeHandler.h:6189
unsigned short m_simple_shadow
For internal use only.
Definition: BOpcodeHandler.h:3084
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2848
void SetFlags(int f)
Definition: BOpcodeHandler.h:8277
void SetGeometry(int m)
Definition: BOpcodeHandler.h:2241
char * GetName()
Definition: BOpcodeHandler.h:8247
void SetColorForcedLockValue(int v)
Definition: BOpcodeHandler.h:3674
type for 'cut geometry' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2709
Handles the TKE_Repeat_Object opcode.
Definition: BOpcodeHandler.h:1765
void SetCutGeometryTolerance(float m)
Definition: BOpcodeHandler.h:4293
void SetHSR(int h)
Definition: BOpcodeHandler.h:3166
int GetLength()
Definition: BOpcodeHandler.h:5341
void SetName(char const *string)
Definition: BOpcodeHandler.h:7989
char * m_string
Definition: BOpcodeHandler.h:2519
self-explanatory
Definition: BOpcodeHandler.h:1324
int GetSimpleShadow() const
Definition: BOpcodeHandler.h:4310
""
Definition: BOpcodeHandler.h:8073
void SetLodCutoffs(int c, float const r[]=0)
Definition: BOpcodeHandler.h:4206
type for 'simple shadow' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2723
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4555
int m_count
Definition: BOpcodeHandler.h:6357
int const * GetSizes() const
Definition: BOpcodeHandler.h:5592
char * GetSphereTessellations()
Definition: BOpcodeHandler.h:4259
int GetColorMarkerForcedLockMask() const
Definition: BOpcodeHandler.h:3760
void SetNext(HT_NURBS_Trim *next)
Definition: BOpcodeHandler.h:6535
lighting interpolation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2580
char m_num_cutoffs
For internal use only.
Definition: BOpcodeHandler.h:3045
void Remember_Item(BStreamFileToolkit &tk, ID_Key key) const
Definition: BOpcodeHandler.h:673
int m_debug_length
Definition: BOpcodeHandler.h:67
void SetGeometry(int m)
Definition: BOpcodeHandler.h:2294
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1275
Handles the TKE_NURBS_Curve opcode.
Definition: BOpcodeHandler.h:6416
void SetDiffuseTextureTintColor(float r, float g, float b)
Definition: BOpcodeHandler.h:4446
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1208
""
Definition: BOpcodeHandler.h:8162
int GetEncoding() const
Definition: BOpcodeHandler.h:7725
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2878
hard edge angle limit; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2947
Handles the TKE_Conditions opcode.
Definition: BOpcodeHandler.h:5313
int GetInternalSelectionLimit() const
Definition: BOpcodeHandler.h:4640
float m_surface_max_facet_width
For internal use only.
Definition: BOpcodeHandler.h:3059
char m_blue_mapping
Definition: BOpcodeHandler.h:8203
float * m_points
Definition: BOpcodeHandler.h:7336
void SetLodCutoff(float r)
Definition: BOpcodeHandler.h:4204
unsigned char m_optionals
Definition: BOpcodeHandler.h:6583
int GetColorTextContrastForcedLockMask() const
Definition: BOpcodeHandler.h:4013
unsigned char m_shadow_map_samples
For internal use only.
Definition: BOpcodeHandler.h:3094
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1207
int GetTextRegionOptions() const
Definition: BOpcodeHandler.h:7734
refer to ::HC_Define_Texture
Definition: BOpcodeHandler.h:8078
double const * GetDMajor() const
Definition: BOpcodeHandler.h:7092
int m_value
internal use; specifies what values to set for boolean options. For internal use only.
Definition: BOpcodeHandler.h:4815
void SetUserData(int size, unsigned char const *bytes=0)
Definition: BOpcodeHandler.h:8845
void SetNames(char const *names)
Definition: BOpcodeHandler.h:6012
void SetDPoints(double x1, double y1, double z1, double x2, double y2, double z2)
Definition: BOpcodeHandler.h:6330
char * m_names
for internal use only
Definition: BOpcodeHandler.h:5954
refer to ::HC_Conditional_Action
Definition: BOpcodeHandler.h:5351
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2637
void SetList(HT_NURBS_Trim *node)
Definition: BOpcodeHandler.h:6534
self-explanatory
Definition: BOpcodeHandler.h:1319
void SetLodNumLevels(int v)
Definition: BOpcodeHandler.h:4129
int GetGeometry() const
Definition: BOpcodeHandler.h:2369
TK_Dictionary_Locater()
Definition: BOpcodeHandler.h:1994
self-explanatory
Definition: BOpcodeHandler.h:5633
self-explanatory
Definition: BOpcodeHandler.h:1339
""
Definition: BOpcodeHandler.h:8111
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5092
""
Definition: BOpcodeHandler.h:5039
""
Definition: BOpcodeHandler.h:8133
""
Definition: BOpcodeHandler.h:8095
int GetInternalPolylineSelectionLimit() const
Definition: BOpcodeHandler.h:4650
static TK_Status GetData(BStreamFileToolkit &tk, int &i)
Definition: BOpcodeHandler.h:299
float const * GetMatrix() const
Definition: BOpcodeHandler.h:4992
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4543
int m_index
Definition: BOpcodeHandler.h:1692
float size
the size. Units are specified separately in size_units
Definition: BOpcodeHandler.h:7635
bool Tagging(BStreamFileToolkit &tk) const
Definition: BOpcodeHandler.h:185
void SetHlrDimFactor(float d)
Definition: BOpcodeHandler.h:4065
TK_Enumerated(unsigned char opcode)
Definition: BOpcodeHandler.h:5145
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4548
unsigned char m_buffer_options_value
For internal use only.
Definition: BOpcodeHandler.h:2997
""
Definition: BOpcodeHandler.h:8057
int * GetCounts()
Definition: BOpcodeHandler.h:7552
self-explanatory
Definition: BOpcodeHandler.h:1350
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2885
float * GetRadii()
Definition: BOpcodeHandler.h:7389
refer to ::HC_Set_Rendering_Options
Definition: BOpcodeHandler.h:5131
char const * GetXML() const
Definition: BOpcodeHandler.h:8934
int m_offset
internal use
Definition: BOpcodeHandler.h:1990
void SetStart(float const s[])
Definition: BOpcodeHandler.h:6927
""
Definition: BOpcodeHandler.h:8087
char m_alpha_mapping
Definition: BOpcodeHandler.h:8204
unsigned char m_buffer_options_mask
For internal use only.
Definition: BOpcodeHandler.h:2996
void SetBufferOptionsValue(int v)
Definition: BOpcodeHandler.h:4034
static TK_Status PutData(BStreamFileToolkit &tk, unsigned short const *s, int n)
Definition: BOpcodeHandler.h:432
float GetInner() const
Definition: BOpcodeHandler.h:6809
extra item for selectability; refer to ::HC_Set_Selectability for a description
Definition: BOpcodeHandler.h:1245
float m_renderer_cutoff
for internal use only
Definition: BOpcodeHandler.h:5963
type for 'shadow map' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2747
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4542
int m_mask
internal use; specifies which visibility settings are active (and hence, which are valid)...
Definition: BOpcodeHandler.h:4814
void SetColorLineForcedLockValue(int v)
Definition: BOpcodeHandler.h:3743
char * m_comment
internal use
Definition: BOpcodeHandler.h:1080
int GetSelectionCulling() const
Definition: BOpcodeHandler.h:4664
type for 'simple reflection' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2757
float * m_points
Definition: BOpcodeHandler.h:8667
double * m_dplanes
internal use
Definition: BOpcodeHandler.h:6832
""
Definition: BOpcodeHandler.h:5081
char const * GetCylinderTessellations() const
Definition: BOpcodeHandler.h:4240
int GetExtras() const
Definition: BOpcodeHandler.h:4655
unsigned char m_greeking_mode
for internal use only
Definition: BOpcodeHandler.h:5971
static short flip(short s)
for internal use only
Definition: BOpcodeHandler.h:494
int GetFaceDisplacement() const
Definition: BOpcodeHandler.h:3198
float GetEnd() const
Definition: BOpcodeHandler.h:6471
self-explanatory
Definition: BOpcodeHandler.h:7880
TK_Polypoint(unsigned char opcode)
Definition: BOpcodeHandler.h:6368
void SetDepthRange(float const l[])
Definition: BOpcodeHandler.h:4406
""
Definition: BOpcodeHandler.h:5051
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2882
void SetSpecularName(int length)
Definition: BOpcodeHandler.h:2133
////
Definition: BOpcodeHandler.h:831
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2648
int GetLoops() const
Definition: BOpcodeHandler.h:8787
float m_simple_reflection_opacity
For internal use only.
Definition: BOpcodeHandler.h:3098
channel m_environment
internal use; note: environment & bump are never a simple RGB type color
Definition: BOpcodeHandler.h:2055
self-explanatory
Definition: BOpcodeHandler.h:1289
""
Definition: BOpcodeHandler.h:8100
void SetRadius(float r)
Definition: BOpcodeHandler.h:7278
type for contour options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2842
short color_text_value
For internal use only.
Definition: BOpcodeHandler.h:1379
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2608
void SetOffset(int offset)
Definition: BOpcodeHandler.h:2013
void SetPreference(int r)
Definition: BOpcodeHandler.h:6113
int m_maximum_extent
internal use; maximum extent
Definition: BOpcodeHandler.h:4589
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2883
unsigned char m_clamp
For internal use only.
Definition: BOpcodeHandler.h:3040
int GetValue() const
Definition: BOpcodeHandler.h:4855
bool GetFollow()
Definition: BOpcodeHandler.h:1744
TKO_Camera_Projection
Definition: BOpcodeHandler.h:5630
void SetColorWindowContrastForcedLockValue(int v)
Definition: BOpcodeHandler.h:3858
float * GetKnots()
Definition: BOpcodeHandler.h:6466
////
Definition: BOpcodeHandler.h:844
void SetVisibilityForcedLockValue(int v)
Definition: BOpcodeHandler.h:3651
float const * GetOrientation() const
Definition: BOpcodeHandler.h:4802
type for transparency field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2703
int GetQuantization() const
Definition: BOpcodeHandler.h:3188
char * GetTransmissionName()
Definition: BOpcodeHandler.h:2169
void SetColorTextContrastForcedLockValue(int v)
Definition: BOpcodeHandler.h:4019
TK_User_Value()
Definition: BOpcodeHandler.h:5611
type for 'mask transform' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2770
near limit setting
Definition: BOpcodeHandler.h:5643
int m_cond_length
Definition: BOpcodeHandler.h:8498
void SetColorVertexLockMask(int m)
Definition: BOpcodeHandler.h:3490
char * GetCondition()
Definition: BOpcodeHandler.h:5390
int GetColorVertexContrastForcedLockMask() const
Definition: BOpcodeHandler.h:3990
int * GetSizes()
Definition: BOpcodeHandler.h:5595
void SetLodBounding(float const p[])
Definition: BOpcodeHandler.h:4159
self-explanatory
Definition: BOpcodeHandler.h:7862
void SetValue(HLONG v)
Definition: BOpcodeHandler.h:5622
int const * GetLengths() const
Definition: BOpcodeHandler.h:8779
choose or simulate an italic variation
Definition: BOpcodeHandler.h:5870
char * GetLookup()
Definition: BOpcodeHandler.h:7832
float const * GetPoints() const
Definition: BOpcodeHandler.h:6327
""
Definition: BOpcodeHandler.h:5068
void SetColorEdgeForcedLockMask(int m)
Definition: BOpcodeHandler.h:3709
int m_count
Definition: BOpcodeHandler.h:8666
void SetLimits(float s, float e)
Definition: BOpcodeHandler.h:7104
void SetIndices(int count, int const indices[], POINTER_SIZED_INT const values[])
Definition: BOpcodeHandler.h:5521
unsigned char m_flags
Definition: BOpcodeHandler.h:7341
int GetAction() const
Definition: BOpcodeHandler.h:5397
float GetSimpleShadowOpacity() const
Definition: BOpcodeHandler.h:4356
void SetDMiddle(double x, double y, double z)
Definition: BOpcodeHandler.h:6980
refer to ::HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:5022
void GetField(float f[]) const
Definition: BOpcodeHandler.h:5760
void SetRelatedSelectionLimit(int r)
Definition: BOpcodeHandler.h:4633
TK_Geometry_Attributes()
Definition: BOpcodeHandler.h:1873
int GetMaximumExtent() const
Definition: BOpcodeHandler.h:4672
Handles the TKE_Clip_Rectangle opcode.
Definition: BOpcodeHandler.h:8610
refer to ::HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:5021
TKO_Font_Greeking_Modes
Definition: BOpcodeHandler.h:5935
type for 'simple shadow' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2733
self-explanatory
Definition: BOpcodeHandler.h:6729
void SetLockValue(int v)
Definition: BOpcodeHandler.h:3229
void SetMaximumExtent(int c)
Definition: BOpcodeHandler.h:4670
""
Definition: BOpcodeHandler.h:8134
unsigned char m_fallback
For internal use only.
Definition: BOpcodeHandler.h:3048
unsigned char m_compression
Definition: BOpcodeHandler.h:7937
indicates presence of extended bits
Definition: BOpcodeHandler.h:2952
type for 'simple reflection' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2755
type for 'mask transform' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2774
char const * GetCondition() const
Definition: BOpcodeHandler.h:1665
Handles the TKE_Text_Font opcode.
Definition: BOpcodeHandler.h:5949
int GetLodOptionsMask() const
Definition: BOpcodeHandler.h:4115
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:1829
extended bit for HLR suboptions; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2820
int m_flags
internal use
Definition: BOpcodeHandler.h:1038
void SetDiffuse(float r, float g, float b)
Definition: BOpcodeHandler.h:2112
bool m_needs_tag
Indicate if this object explicitly needs tagging.
Definition: BOpcodeHandler.h:65
character is invisible
Definition: BOpcodeHandler.h:7620
indicates that the 2nd byte should be written
Definition: BOpcodeHandler.h:2929
int GetColorFaceLockValue() const
Definition: BOpcodeHandler.h:3299
char const * GetDiffuseName() const
Definition: BOpcodeHandler.h:2122
type for transparency field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2700
""
Definition: BOpcodeHandler.h:8123
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4482
void SetMajor(float x, float y, float z)
Definition: BOpcodeHandler.h:7058
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1259
static TK_Status GetData(BStreamFileToolkit &tk, double *d, int n)
Definition: BOpcodeHandler.h:276
Truevision TGA.
Definition: BOpcodeHandler.h:7884
float const * GetOrderedWeights() const
Definition: BOpcodeHandler.h:4731
""
Definition: BOpcodeHandler.h:8067
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4524
HLONG * m_values
for internal use only
Definition: BOpcodeHandler.h:5500
self-explanatory
Definition: BOpcodeHandler.h:1335
int GetOptions() const
Definition: BOpcodeHandler.h:8037
static TK_Status PutData(BStreamFileToolkit &tk, double const &d)
Definition: BOpcodeHandler.h:459
float const * GetValueScale() const
Definition: BOpcodeHandler.h:8338
Handles the TKE_User_Index opcode.
Definition: BOpcodeHandler.h:5544
int m_size
Definition: BOpcodeHandler.h:8444
unsigned char * m_isoline_weights_unit
for internal use only.
Definition: BOpcodeHandler.h:3024
float const * GetValues() const
Definition: BOpcodeHandler.h:2479
int GetParameterSource() const
Definition: BOpcodeHandler.h:8288
void floats_to_bytes(float const *in, unsigned char *out, int count) const
for internal use only
Definition: BOpcodeHandler.h:620
reserved
Definition: BOpcodeHandler.h:7599
double GetDRadius() const
Definition: BOpcodeHandler.h:7302
fill edges of characters to improve appearance ar small sizes
Definition: BOpcodeHandler.h:5868
void SetBytes(int size, char const *bytes=0)
Definition: BOpcodeHandler.h:7808
float * GetVKnots()
Definition: BOpcodeHandler.h:6644
BBaseOpcodeHandler(int op)
Definition: BOpcodeHandler.h:89
char const * GetOptions() const
Definition: BOpcodeHandler.h:5443
Definition: BOpcodeHandler.h:5182
self-explanatory
Definition: BOpcodeHandler.h:1337
type for 'mask transform' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2771
float const * GetImageTintColor() const
Definition: BOpcodeHandler.h:4443
TKO_Color_Channels
Definition: BOpcodeHandler.h:1286
self-explanatory
Definition: BOpcodeHandler.h:1355
double const * GetDPlanes() const
Definition: BOpcodeHandler.h:6877
type for HSR field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2687
Handles the TKE_Dictionary opcode.
Definition: BOpcodeHandler.h:1952
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2601
float * GetLodRatios()
Definition: BOpcodeHandler.h:4179
only use hardware fonts
Definition: BOpcodeHandler.h:5916
void SetValue(int v)
Definition: BOpcodeHandler.h:6007
float const * GetPosition() const
Definition: BOpcodeHandler.h:7712
float const * GetTransmission() const
Definition: BOpcodeHandler.h:2165
int GetCaps() const
Definition: BOpcodeHandler.h:7308
add an overline to the font
Definition: BOpcodeHandler.h:5862
int GetColorEdgeLockMask() const
Definition: BOpcodeHandler.h:3311
only use Hoops defined (stroked) fonts
Definition: BOpcodeHandler.h:5918
void SetOrientation(int count, float const o[])
Definition: BOpcodeHandler.h:4792
bool GetStreaming() const
Definition: BOpcodeHandler.h:5302
void SetLayout(int p)
Definition: BOpcodeHandler.h:8326
type for transparency field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2696
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2631
type for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2810
char m_param_function
Definition: BOpcodeHandler.h:8205
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1253
char * m_definition
Definition: BOpcodeHandler.h:8565
int m_string_length
internal use
Definition: BOpcodeHandler.h:2446
char m_num_cylinder
For internal use only.
Definition: BOpcodeHandler.h:3068
int m_surface_budget
For internal use only.
Definition: BOpcodeHandler.h:3054
ID_Key m_key
for internal use only
Definition: BOpcodeHandler.h:1896
TKO_Enumerations
Definition: BOpcodeHandler.h:5005
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2894
float GetGloss() const
Definition: BOpcodeHandler.h:2207
HT_NURBS_Trim * GetTrims()
Definition: BOpcodeHandler.h:6654
type for 'cut geometry' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2716
float * m_isoline_weights_value
for internal use only.
Definition: BOpcodeHandler.h:3023
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4557
short color_cut_edge_mask
For internal use only.
Definition: BOpcodeHandler.h:1404
char const * GetDefinition() const
Definition: BOpcodeHandler.h:8478
int GetVisibilityLockMask() const
Definition: BOpcodeHandler.h:3242
Definition: BStream.h:254
void SetRotation(float r)
Definition: BOpcodeHandler.h:6041
int GetValue(int index=0) const
Definition: BOpcodeHandler.h:3163
int GetBufferOptionsMask() const
Definition: BOpcodeHandler.h:4032
indicates presence of extended bits
Definition: BOpcodeHandler.h:2776
float * m_weights
Definition: BOpcodeHandler.h:6588
void SetColorBackLockMask(int m)
Definition: BOpcodeHandler.h:3467
Handles the TKE_Marker, TKE_Text_Path TKE_Distant_Light, and TKE_Local_Light opcodes.
Definition: BOpcodeHandler.h:6236
TK_PolyCylinder()
Definition: BOpcodeHandler.h:7346
void SetRectangle(float left, float right, float bottom, float top)
Definition: BOpcodeHandler.h:8630
void SetUpVector(float const u[])
Definition: BOpcodeHandler.h:5737
unsigned char m_tq
internal use; low half technology, high half quantization. For internal use only. ...
Definition: BOpcodeHandler.h:2986
unsigned char m_general_flags
Basic flags common to many handlers.
Definition: BOpcodeHandler.h:64
char * m_name
Definition: BOpcodeHandler.h:8564
HLONG m_value
for internal use only
Definition: BOpcodeHandler.h:5607
char * GetCondition()
Definition: BOpcodeHandler.h:1670
orthographic projection
Definition: BOpcodeHandler.h:5635
float const * GetWindow() const
Definition: BOpcodeHandler.h:5838
""
Definition: BOpcodeHandler.h:5061
unsigned char m_type
Definition: BOpcodeHandler.h:7768
void SetDMajor(double const m[])
Definition: BOpcodeHandler.h:7090
void SetScreenRange(float const l[])
Definition: BOpcodeHandler.h:4415
int GetCutGeometryLevel() const
Definition: BOpcodeHandler.h:4285
char * GetName()
Definition: BOpcodeHandler.h:5269
extra item for selectability; refer to ::HC_Set_Selectability for a description
Definition: BOpcodeHandler.h:1246
mask of bits requiring extended
Definition: BOpcodeHandler.h:2777
void SetImageScale(float x, float y)
Definition: BOpcodeHandler.h:4430
common/shared items; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1199
float const * GetVKnots() const
Definition: BOpcodeHandler.h:6642
void SetStreaming(bool s)
Definition: BOpcodeHandler.h:5300
void SetSpace(int s)
Definition: BOpcodeHandler.h:2312
void SetEnvironmentName(int length)
Definition: BOpcodeHandler.h:2189
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4520
int GetCompression() const
Definition: BOpcodeHandler.h:8042
int const * GetRenderers() const
Definition: BOpcodeHandler.h:6099
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1263
int m_index
internal use
Definition: BOpcodeHandler.h:2337
void SetRadius(float r)
Definition: BOpcodeHandler.h:7157
HT_NURBS_Trim * m_next
Definition: BOpcodeHandler.h:6508
TK_Open_Segment()
Definition: BOpcodeHandler.h:1491
type for HSR field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2680
void SetLodOptionsValue(int v)
Definition: BOpcodeHandler.h:4117
type for 'cut geometry' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2720
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2907
void SetVector(float const v[])
Definition: BOpcodeHandler.h:4694
int GetColorTextLockMask() const
Definition: BOpcodeHandler.h:3380
self-explanatory
Definition: BOpcodeHandler.h:7567
type for 'simple shadow' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2734
BBaseOpcodeHandler * m_complex
Definition: BOpcodeHandler.h:8669
type for 'cut geometry' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2710
Definition: BOpcodeHandler.h:2036
double const * GetDStart() const
Definition: BOpcodeHandler.h:7012
void SetMiddle(float x, float y, float z)
Definition: BOpcodeHandler.h:6931
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5098
int GetGeometry() const
Definition: BOpcodeHandler.h:2256
int GetRendererCutoffUnits() const
Definition: BOpcodeHandler.h:6109
short m_channels
internal use
Definition: BOpcodeHandler.h:2031
void SetSize(int w, int h)
Definition: BOpcodeHandler.h:8023
float m_hlr_transparency_cutoff
For internal use only.
Definition: BOpcodeHandler.h:3003
self-explanatory
Definition: BOpcodeHandler.h:7573
float m_preference_cutoff
for internal use only
Definition: BOpcodeHandler.h:5964
void SetLodMinimumTriangleCount(int v)
Definition: BOpcodeHandler.h:4125
type for 'simple shadow' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2726
char * m_condition
Definition: BOpcodeHandler.h:1695
type for 'mask transform' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2769
refer to ::HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:5033
float m_start
Definition: BOpcodeHandler.h:6426
void SetDOrigin(double const o[])
Definition: BOpcodeHandler.h:7516
TK_Ellipse(unsigned char opcode)
Definition: BOpcodeHandler.h:7038
int GetCount() const
Definition: BOpcodeHandler.h:7416
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2876
""
Definition: BOpcodeHandler.h:8145
type for contour options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2837
TK_Heuristics()
Definition: BOpcodeHandler.h:4606
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5108
void SetHlrFaceDisplacement(float d)
Definition: BOpcodeHandler.h:4069
void SetPoints(float const s[], float const m[], float const e[], float const c[]=0)
Definition: BOpcodeHandler.h:6957
int GetMaskTransform() const
Definition: BOpcodeHandler.h:4274
int GetColorTextContrastForcedLockValue() const
Definition: BOpcodeHandler.h:4024
type for 'mask transform' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2780
char * GetString()
Definition: BOpcodeHandler.h:8978
type for depth peeling algorithm field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2691
void SetDStart(double x, double y, double z)
Definition: BOpcodeHandler.h:6972
scale factor for width
Definition: BOpcodeHandler.h:5853
void SetDiffuseTextureTintColor(float const rgb[])
Definition: BOpcodeHandler.h:4449
void SetEmission(float const rgb[])
Definition: BOpcodeHandler.h:2174
lighting interpolation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2575
void SetOptions(int f)
Definition: BOpcodeHandler.h:8035
unsigned char * GetBytes()
Definition: BOpcodeHandler.h:8417
z values, 32-bit floats in [0..1] range
Definition: BOpcodeHandler.h:7851
void SetMask(int m)
Definition: BOpcodeHandler.h:4619
void SetConcentration(float c)
Definition: BOpcodeHandler.h:6812
char m_param_source
Definition: BOpcodeHandler.h:8198
self-explanatory
Definition: BOpcodeHandler.h:1323
type for 'quantization' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2791
internal use, indicates shift for placement of extended section
Definition: BOpcodeHandler.h:1232
float * GetWeights()
Definition: BOpcodeHandler.h:6563
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2875
int m_buffer_size
Definition: BOpcodeHandler.h:8820
ID_Key GetKey() const
Definition: BOpcodeHandler.h:1913
static void fix_out(double *d, int n)
for internal use only
Definition: BOpcodeHandler.h:597
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2634
void SetColorBackForcedLockValue(int v)
Definition: BOpcodeHandler.h:3881
unsigned short m_simple_shadow_resolution
For internal use only.
Definition: BOpcodeHandler.h:3086
int const * GetCounts() const
Definition: BOpcodeHandler.h:7550
type for 'shadow map' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2746
float const * GetEnd() const
Definition: BOpcodeHandler.h:7275
void SetPlane(float a, float b, float c, float d)
Definition: BOpcodeHandler.h:6856
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1234
mask for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2816
type for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2808
16-bit colormap indices
Definition: BOpcodeHandler.h:7847
int GetOrderedWeightsMask() const
Definition: BOpcodeHandler.h:4721
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2671
void add_segment(BStreamFileToolkit &tk, ID_Key key)
for internal use only
Definition: BOpcodeHandler.h:632
BBaseOpcodeHandler * m_referee
for internal use only
Definition: BOpcodeHandler.h:8503
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2895
Lock_Masks m_filter
for internal use only
Definition: BOpcodeHandler.h:1610
refer to ::HC_Set_Heuristics for description
Definition: BOpcodeHandler.h:4564
void SetColorTextForcedLockMask(int m)
Definition: BOpcodeHandler.h:3778
void SetForceDefer(int l)
Definition: BOpcodeHandler.h:4741
void SetColorLockMask(int m)
Definition: BOpcodeHandler.h:3260
ID_Key m_renumbered_key
for internal use only
Definition: BOpcodeHandler.h:1606
Handles the TKE_Modelling_Matrix and TKE_Texture_Matrix opcodes.
Definition: BOpcodeHandler.h:4966
""
Definition: BOpcodeHandler.h:8055
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2901
void SetIndex(int i)
Definition: BOpcodeHandler.h:5155
""
Definition: BOpcodeHandler.h:5065
void SetVertexDecimation(float f)
Definition: BOpcodeHandler.h:4459
type for 'shadow map' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2741
int GetColorWindowContrastForcedLockMask() const
Definition: BOpcodeHandler.h:3852
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2889
void SetDiffuseName(int length)
Definition: BOpcodeHandler.h:2118
TKO_Font_Options
Definition: BOpcodeHandler.h:5846
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2890
shift corresponding to extended bit
Definition: BOpcodeHandler.h:1301
TKO_Texture_Channel_Mappings
Definition: BOpcodeHandler.h:8157
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4551
type for 'quantization' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2790
void Reset()
internal use
Definition: BOpcodeHandler.h:2043
int m_number_of_items
internal use
Definition: BOpcodeHandler.h:1957
refer to ::HC_Define_Texture
Definition: BOpcodeHandler.h:8077
int GetGreenMapping() const
Definition: BOpcodeHandler.h:8308
type for 'cut geometry' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2715
self-explanatory
Definition: BOpcodeHandler.h:6155
char * GetCylinderTessellations()
Definition: BOpcodeHandler.h:4242
""
Definition: BOpcodeHandler.h:8090
void SetTarget(float x, float y, float z)
Definition: BOpcodeHandler.h:6786
void SetSphereTessellation(int n)
Definition: BOpcodeHandler.h:4244
void SetColorBackLockValue(int v)
Definition: BOpcodeHandler.h:3478
type for 'simple reflection' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2752
void SetAction(int at)
Definition: BOpcodeHandler.h:5395
float m_index
internal use
Definition: BOpcodeHandler.h:2386
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2908
void SetDAxis(double const s[], double const e[])
Definition: BOpcodeHandler.h:7289
""
Definition: BOpcodeHandler.h:8074
char * GetSegment()
Definition: BOpcodeHandler.h:1522
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4472
void SetSize(int const s[])
Definition: BOpcodeHandler.h:8422
indicates presence of extended bits
Definition: BOpcodeHandler.h:2758
refer to ::HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:5032
shift of extended section
Definition: BOpcodeHandler.h:4488
void SetColorVertexContrastLockValue(int v)
Definition: BOpcodeHandler.h:3593
int m_general_displacement
For internal use only.
Definition: BOpcodeHandler.h:3120
Handles the TKE_Color opcode.
Definition: BOpcodeHandler.h:2221
BBaseOpcodeHandler * m_referee
for internal use only
Definition: BOpcodeHandler.h:1608
type for 'mask transform' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2779
char const * GetSegment() const
Definition: BOpcodeHandler.h:1644
////
Definition: BOpcodeHandler.h:838
int m_definition_length
Definition: BOpcodeHandler.h:8563
static TK_Status GetData(BStreamFileToolkit &tk, int *i, int n)
Definition: BOpcodeHandler.h:260
TK_Line(unsigned char opcode=TKE_Line)
Definition: BOpcodeHandler.h:6305
int m_stage
The writing stage.
Definition: BOpcodeHandler.h:61
void SetColorLineContrastLockMask(int m)
Definition: BOpcodeHandler.h:3536
If this bit is set, a thumbnail of this view immediately follows.
Definition: BOpcodeHandler.h:5645
void SetColorVertexForcedLockValue(int v)
Definition: BOpcodeHandler.h:3904
int GetNURBSOptionsValue() const
Definition: BOpcodeHandler.h:4093
float * m_planes
internal use
Definition: BOpcodeHandler.h:6831
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2607
common/shared items; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1196
void SetTiling(int p)
Definition: BOpcodeHandler.h:8331
int GetLodFallback() const
Definition: BOpcodeHandler.h:4147
s3 texture compression level 3
Definition: BOpcodeHandler.h:7855
""
Definition: BOpcodeHandler.h:5072
short color_edge_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:1390
void SetDMinor(double const m[])
Definition: BOpcodeHandler.h:7099
Handles the TKE_PolyCylinder opcode.
Definition: BOpcodeHandler.h:7333
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2909
int * GetLengths()
Definition: BOpcodeHandler.h:8781
""
Definition: BOpcodeHandler.h:8061
char m_type
internal use
Definition: BOpcodeHandler.h:6176
TKO_Thumbnail_Formats
Definition: BOpcodeHandler.h:8370
unsigned short m_shadow_map
For internal use only.
Definition: BOpcodeHandler.h:3092
void GetDPosition(double p[]) const
Definition: BOpcodeHandler.h:5711
float m_stereo_distance
For internal use only.
Definition: BOpcodeHandler.h:3065
int m_length
Definition: BOpcodeHandler.h:5414
float GetLineSpacing() const
Definition: BOpcodeHandler.h:6068
type for HSR field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2682
static TK_Status LookatData(BStreamFileToolkit &tk, unsigned char &b)
Definition: BOpcodeHandler.h:332
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2854
int m_length
Definition: BOpcodeHandler.h:2518
int visibility_mask
For internal use only.
Definition: BOpcodeHandler.h:1406
int GetCount() const
Definition: BOpcodeHandler.h:6551
void SetColorTextContrastForcedLockMask(int m)
Definition: BOpcodeHandler.h:4008
int GetColorBackLockValue() const
Definition: BOpcodeHandler.h:3483
void SetWhenInvisible(int m)
Definition: BOpcodeHandler.h:4951
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2599
void SetKey(ID_Key k)
Definition: BOpcodeHandler.h:1911
char const * GetNames() const
Definition: BOpcodeHandler.h:6016
int GetLength() const
Definition: BOpcodeHandler.h:2483
int m_placeholder
internal use
Definition: BOpcodeHandler.h:1955
format mask
Definition: BOpcodeHandler.h:7859
float m_vertex_decimation
For internal use only.
Definition: BOpcodeHandler.h:3123
double const * GetDRadii() const
Definition: BOpcodeHandler.h:7410
void SetColorMarkerForcedLockMask(int m)
Definition: BOpcodeHandler.h:3755
wchar_t const * GetString() const
Definition: BOpcodeHandler.h:9054
void SetInterpolation(int p)
Definition: BOpcodeHandler.h:8291
void SetDCenter(double x, double y, double z)
Definition: BOpcodeHandler.h:7185
void SetDMinor(double x, double y, double z)
Definition: BOpcodeHandler.h:7095
float * GetMatrix()
Definition: BOpcodeHandler.h:4994
void SetOrigin(float x, float y, float z)
Definition: BOpcodeHandler.h:7478
clip region is to be specified in object space.
Definition: BOpcodeHandler.h:8652
int m_length
Definition: BOpcodeHandler.h:5315
int GetGeometryOptionsMask() const
Definition: BOpcodeHandler.h:4264
extended bit
Definition: BOpcodeHandler.h:4486
int m_allocated
Definition: BOpcodeHandler.h:1599
int GetCutGeometryColorMatch() const
Definition: BOpcodeHandler.h:4290
unsigned char size_units
specified with enum TKO_Font_Size_Units
Definition: BOpcodeHandler.h:7645
Handles the TKE_External_Reference_Unicode opcodes.
Definition: BOpcodeHandler.h:9028
float m_outer
for internal use only
Definition: BOpcodeHandler.h:6752
TKO_Image_Formats
Definition: BOpcodeHandler.h:7845
Handles the TKE_Polyline and TKE_Polygon opcodes.
Definition: BOpcodeHandler.h:6355
char m_apply_mode
Definition: BOpcodeHandler.h:8211
""
Definition: BOpcodeHandler.h:8159
HLONG * GetValues()
Definition: BOpcodeHandler.h:5534
""
Definition: BOpcodeHandler.h:5047
int GetHlrOptions() const
Definition: BOpcodeHandler.h:4063
int m_pixel_threshold
internal use; pixel threshold
Definition: BOpcodeHandler.h:4588
int m_count
internal use
Definition: BOpcodeHandler.h:6833
int mask
For internal use only.
Definition: BOpcodeHandler.h:1366
""
Definition: BOpcodeHandler.h:8093
int m_internal_shell
internal use
Definition: BOpcodeHandler.h:4582
void SetRef1(float const r[])
Definition: BOpcodeHandler.h:7493
float const * GetLimits() const
Definition: BOpcodeHandler.h:7108
unsigned char m_type
Definition: BOpcodeHandler.h:6509
float GetConcentration() const
Definition: BOpcodeHandler.h:6814
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2596
void SetColorFaceContrastLockValue(int v)
Definition: BOpcodeHandler.h:3432
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2849
mask for either fitting setting
Definition: BOpcodeHandler.h:7598
int GetColorMarkerLockMask() const
Definition: BOpcodeHandler.h:3357
self-explanatory
Definition: BOpcodeHandler.h:1320
Handles the TKE_Bounding, and TKE_Bounding_Info opcodes.
Definition: BOpcodeHandler.h:6172
unsigned char m_projection
internal use
Definition: BOpcodeHandler.h:5664
char m_tint_effect
For internal use only.
Definition: BOpcodeHandler.h:3029
void SetColorFaceForcedLockValue(int v)
Definition: BOpcodeHandler.h:3697
TK_User_Data()
Definition: BOpcodeHandler.h:8827
int GetCount() const
Definition: BOpcodeHandler.h:6462
""
Definition: BOpcodeHandler.h:8148
void SetRGB(float const rgb[])
Definition: BOpcodeHandler.h:2261
unsigned char m_degree[2]
Definition: BOpcodeHandler.h:6584
int m_force_defer
internal use; hard extent
Definition: BOpcodeHandler.h:4593
float GetOuter() const
Definition: BOpcodeHandler.h:6804
float const * GetPosition() const
Definition: BOpcodeHandler.h:6775
int m_index
Definition: BOpcodeHandler.h:1567
void SetPoint(float x, float y, float z)
Definition: BOpcodeHandler.h:6268
const int TK_Image_Bytes_Per_Pixel[]
Specifies the number of bytes per pixel for each format.
TK_Glyph_Definition()
Definition: BOpcodeHandler.h:8450
int GetColorForcedLockMask() const
Definition: BOpcodeHandler.h:3668
region is a clip region
Definition: BOpcodeHandler.h:8653
double m_dradius
Definition: BOpcodeHandler.h:7246
void SetColorVertexContrastLockMask(int m)
Definition: BOpcodeHandler.h:3582
int GetColorLockMask() const
Definition: BOpcodeHandler.h:3265
void SetGreekingLimit(float s)
Definition: BOpcodeHandler.h:6076
float const * GetStart() const
Definition: BOpcodeHandler.h:7273
void SetLodAlgorithm(int v)
Definition: BOpcodeHandler.h:4121
self-explanatory
Definition: BOpcodeHandler.h:5641
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4517
char * GetEmissionName()
Definition: BOpcodeHandler.h:2184
self-explanatory
Definition: BOpcodeHandler.h:7575
self-explanatory
Definition: BOpcodeHandler.h:1329
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4512
TKO_Texture_Application_Modes
Definition: BOpcodeHandler.h:8172
int GetNURBSSurfaceBudget() const
Definition: BOpcodeHandler.h:4105
unsigned short m_tint_options
For internal use only.
Definition: BOpcodeHandler.h:3026
type for transparency field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2705
int m_maximum_extent_mode
internal use; maximum extent mode – int! argh...
Definition: BOpcodeHandler.h:4590
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1227
TK_Status Write(BStreamFileToolkit &)
Definition: BOpcodeHandler.h:1412
void SetWindow(float const w[])
Definition: BOpcodeHandler.h:5836
channel m_diffuse
internal use
Definition: BOpcodeHandler.h:2050
void SetGeometry(int m)
Definition: BOpcodeHandler.h:2403
void SetRendererCutoff(float s)
Definition: BOpcodeHandler.h:6102
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4532
int GetNumSphereTessellations() const
Definition: BOpcodeHandler.h:4255
float * GetValues()
Definition: BOpcodeHandler.h:2481
float * m_radii
Definition: BOpcodeHandler.h:7339
Handles the TKE_Camera opcode.
Definition: BOpcodeHandler.h:5654
self-explanatory
Definition: BOpcodeHandler.h:7568
int GetTransparentStyle() const
Definition: BOpcodeHandler.h:3178
int m_mask
internal use
Definition: BOpcodeHandler.h:2336
polyhedra will be instanced using their tristrip information
Definition: BOpcodeHandler.h:1752
adjust region left-to-right
Definition: BOpcodeHandler.h:7593
int GetSpace() const
Definition: BOpcodeHandler.h:2314
type for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2828
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4476
float m_index
internal use
Definition: BOpcodeHandler.h:2058
self-explanatory
Definition: BOpcodeHandler.h:1340
character slant
Definition: BOpcodeHandler.h:5852
int GetColorMarkerContrastForcedLockMask() const
Definition: BOpcodeHandler.h:3967
int GetSizeUnits() const
Definition: BOpcodeHandler.h:6028
extended bit for HLR suboptions; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2827
void SetLodThreshold(float r)
Definition: BOpcodeHandler.h:4186
float m_start_u
Definition: BOpcodeHandler.h:6517
int GetJoinCutoffAngle() const
Definition: BOpcodeHandler.h:3213
int GetColorWindowLockValue() const
Definition: BOpcodeHandler.h:3414
unsigned short m_transparency_options
internal use; low nibble style, next peeling flags, then zsort
Definition: BOpcodeHandler.h:3077
self-explanatory
Definition: BOpcodeHandler.h:8371
int m_total_size
the total size of the blind material data
Definition: BOpcodeHandler.h:8878
""
Definition: BOpcodeHandler.h:5058
int m_mask
internal use
Definition: BOpcodeHandler.h:2030
char m_interpolation
Definition: BOpcodeHandler.h:8199
void SetNURBSCurveContinuedBudget(int b)
Definition: BOpcodeHandler.h:4099
char const * GetComment() const
Definition: BOpcodeHandler.h:1122
void SetHlrOptions(int o)
Definition: BOpcodeHandler.h:4054
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1257
void SetStereoDistance(float d)
Definition: BOpcodeHandler.h:4048
Handles the TKE_Text and TKE_Text_With_Encoding opcodes.
Definition: BOpcodeHandler.h:7658
int GetColorBackForcedLockValue() const
Definition: BOpcodeHandler.h:3886
unsigned char m_size_units
for internal use only
Definition: BOpcodeHandler.h:5967
float const * GetWeights() const
Definition: BOpcodeHandler.h:6634
short color_back_mask
For internal use only.
Definition: BOpcodeHandler.h:1386
void set_last_key(BStreamFileToolkit &tk, ID_Key key)
sets the given key as "most recent" on the toolkit for the purposes of associating keys with indices ...
Definition: BOpcodeHandler.h:636
int m_length
Definition: BOpcodeHandler.h:8991
float width_scale
adjustment to character width
Definition: BOpcodeHandler.h:7640
char m_param_offset
Definition: BOpcodeHandler.h:8212
int m_substage
Definition: BOpcodeHandler.h:6507
""
Definition: BOpcodeHandler.h:5060
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1260
double * GetDRef2()
Definition: BOpcodeHandler.h:7542
double const * GetDCenter() const
Definition: BOpcodeHandler.h:7083
void SetWindow(float l, float r, float b, float t)
Definition: BOpcodeHandler.h:5833
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2632
float * m_weights
Definition: BOpcodeHandler.h:6515
""
Definition: BOpcodeHandler.h:8099
void SetFlags(int f)
Definition: BOpcodeHandler.h:1058
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2645
char * GetLoggingString()
Definition: BOpcodeHandler.h:237
void SetDebug(int d)
Definition: BOpcodeHandler.h:3191
int m_lod_options_value
For internal use only.
Definition: BOpcodeHandler.h:3032
type for 'shadow map' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2739
char * GetDefinition()
Definition: BOpcodeHandler.h:8599
Window Space.
Definition: BOpcodeHandler.h:5166
float * m_points
Definition: BOpcodeHandler.h:8733
unsigned char m_format
Definition: BOpcodeHandler.h:7935
int GetColorMarkerContrastLockMask() const
Definition: BOpcodeHandler.h:3564
int color_mask
For internal use only.
Definition: BOpcodeHandler.h:1368
float const * GetPoints() const
Definition: BOpcodeHandler.h:6696
int m_length
Definition: BOpcodeHandler.h:7767
Handles the TKE_Rendering_Options opcode.
Definition: BOpcodeHandler.h:2980
Screen Space.
Definition: BOpcodeHandler.h:5165
""
Definition: BOpcodeHandler.h:5045
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2587
void SetMaximumExtentLevel(int c)
Definition: BOpcodeHandler.h:4680
""
Definition: BOpcodeHandler.h:5048
self-explanatory
Definition: BOpcodeHandler.h:1354
bump map
Definition: BOpcodeHandler.h:1358
float const * GetPoints() const
Definition: BOpcodeHandler.h:6553
int Pass(BStreamFileToolkit &tk) const
Definition: BOpcodeHandler.h:174
int GetUDegree() const
Definition: BOpcodeHandler.h:6626
BBaseOpcodeHandler * Opcode_Handler(BStreamFileToolkit &tk, unsigned char op) const
Definition: BOpcodeHandler.h:659
void SetViewVolume(float ax, float ay, float az, float bx, float by, float bz)
Definition: BOpcodeHandler.h:4707
type for depth peeling algorithm field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2692
unsigned char m_units
for internal use only.
Definition: BOpcodeHandler.h:5185
mask of bits requiring extended
Definition: BOpcodeHandler.h:2759
void SetCenter(float x, float y, float z)
Definition: BOpcodeHandler.h:7049
int GetMask() const
Definition: BOpcodeHandler.h:4625
void SetComment(char const *comment)
Definition: BOpcodeHandler.h:1113
""
Definition: BOpcodeHandler.h:8124
type for 'technology' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2784
unsigned char m_flags
Definition: BOpcodeHandler.h:6905
bool m_terminate_file
internal use for hsx read-write only. This indicates if the TKE_Terminate is
Definition: BOpcodeHandler.h:1157
int GetColorVertexForcedLockValue() const
Definition: BOpcodeHandler.h:3909
fea nodes setting is off; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2951
self-explanatory
Definition: BOpcodeHandler.h:7863
void SetColorMarkerForcedLockValue(int v)
Definition: BOpcodeHandler.h:3766
self-explanatory
Definition: BOpcodeHandler.h:1291
HT_NURBS_Trim const * GetList() const
Definition: BOpcodeHandler.h:6569
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2863
self-explanatory
Definition: BOpcodeHandler.h:7869
void SetDAxis(double const a[])
Definition: BOpcodeHandler.h:7291
Definition: BOpcodeHandler.h:989
short color_marker_mask
For internal use only.
Definition: BOpcodeHandler.h:1376
char * GetSegment()
Definition: BOpcodeHandler.h:8551
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5091
int m_isoline_weight_count
for internal use only.
Definition: BOpcodeHandler.h:3022
void SetParameterOffset(int p)
Definition: BOpcodeHandler.h:8346
float const * GetPoints() const
Definition: BOpcodeHandler.h:6456
float const * GetKnots() const
Definition: BOpcodeHandler.h:6565
char * m_string
Definition: BOpcodeHandler.h:8954
""
Definition: BOpcodeHandler.h:8165
float const * GetEmission() const
Definition: BOpcodeHandler.h:2180
int m_buffer_size_limit
For internal use only.
Definition: BOpcodeHandler.h:2998
The BBaseOpcodeHandler abstract class is used as a base for derived classes which manage logical piec...
Definition: BOpcodeHandler.h:53
double const * GetDMatrix() const
Definition: BOpcodeHandler.h:4996
""
Definition: BOpcodeHandler.h:5043
float const * GetDiffuseTextureTintColor() const
Definition: BOpcodeHandler.h:4451
char * GetString()
Definition: BOpcodeHandler.h:7704
type for 'shadow map' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2743
double const * GetDPoints() const
Definition: BOpcodeHandler.h:8703
Pixels.
Definition: BOpcodeHandler.h:5168
int GetCount() const
Definition: BOpcodeHandler.h:6398
unsigned char m_hsr
internal use; low half hsr, high half thsr. For internal use only.
Definition: BOpcodeHandler.h:2985
void SetDiffuseName(char const *name)
Definition: BOpcodeHandler.h:2116
char const * GetCondition() const
Definition: BOpcodeHandler.h:1733
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1266
float GetSimpleReflectionOpacity() const
Definition: BOpcodeHandler.h:4395
""
Definition: BOpcodeHandler.h:8144
color interpolation value; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2567
int m_hlr_line_pattern
For internal use only.
Definition: BOpcodeHandler.h:3004
Handles the TKE_Material opcode.
Definition: BOpcodeHandler.h:8876
void SetStereoSeparation(float s)
Definition: BOpcodeHandler.h:4044
void SetCallback(char const *callback)
Definition: BOpcodeHandler.h:2541
static TK_Status GetData(BStreamFileToolkit &tk, unsigned short &s)
Definition: BOpcodeHandler.h:305
""
Definition: BOpcodeHandler.h:8122
TK_Status
Codes which can be either passed to various toolkit functions, or indicate the result of a toolkit fu...
Definition: BStream.h:253
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4484
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4531
char const * GetCondition() const
Definition: BOpcodeHandler.h:5388
void SetCaps(int f)
Definition: BOpcodeHandler.h:7306
int GetBytesCount() const
Definition: BOpcodeHandler.h:7810
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5102
mask for HSR field
Definition: BOpcodeHandler.h:2688
Handles the TKE_Window opcode.
Definition: BOpcodeHandler.h:5816
BBaseOpcodeHandler * m_index_data
Definition: BOpcodeHandler.h:5418
TK_Point(unsigned char opcode)
Definition: BOpcodeHandler.h:6244
int m_length
Definition: BOpcodeHandler.h:7662
BBaseOpcodeHandler * m_unicode
Definition: BOpcodeHandler.h:5417
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2633
unsigned char m_encoding
Definition: BOpcodeHandler.h:7665
self-explanatory
Definition: BOpcodeHandler.h:1333
TK_LOD()
Definition: BOpcodeHandler.h:1836
type for 'mask transform' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2773
int GetColorEdgeContrastLockValue() const
Definition: BOpcodeHandler.h:3529
void SetColorVertexContrastForcedLockMask(int m)
Definition: BOpcodeHandler.h:3985
""
Definition: BOpcodeHandler.h:8112
void SetSize(float value, int units=TKO_Generic_Size_Unspecified)
Definition: BOpcodeHandler.h:5200
void SetAxis(float const s[])
Definition: BOpcodeHandler.h:7168
void SetValue(int m)
Definition: BOpcodeHandler.h:4850
double const * GetDAxis() const
Definition: BOpcodeHandler.h:7293
Handles the TKE_Visibility opcode.
Definition: BOpcodeHandler.h:4812
self-explanatory
Definition: BOpcodeHandler.h:1316
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2899
float GetIndex() const
Definition: BOpcodeHandler.h:2211
void SetPoint(float const p[])
Definition: BOpcodeHandler.h:6270
void SetExtras(int e)
Definition: BOpcodeHandler.h:4653
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2673
void SetFollow(bool f)
Definition: BOpcodeHandler.h:1742
unsigned char m_hlr_weight_units
for internal use only.
Definition: BOpcodeHandler.h:3007
refer to ::HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:5017
TK_Named_Style_Def()
Definition: BOpcodeHandler.h:8508
////
Definition: BOpcodeHandler.h:889
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: BOpcodeHandler.h:8405
unsigned char m_cut_geometry_match
For internal use only.
Definition: BOpcodeHandler.h:3081
type for NURBS curve options; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2939
char * m_string
Definition: BOpcodeHandler.h:1600
void SetPoints(float const p[])
Definition: BOpcodeHandler.h:6325
double * GetDPoints()
Definition: BOpcodeHandler.h:8770
void SetTransparentStyle(int s)
Definition: BOpcodeHandler.h:3176
TKO_Text_Encodings
Definition: BOpcodeHandler.h:7565
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2852
float const * GetRectangle() const
Definition: BOpcodeHandler.h:8636
""
Definition: BOpcodeHandler.h:8149
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4534
int m_length
Definition: BOpcodeHandler.h:1598
select how to draw (or not) greeked text
Definition: BOpcodeHandler.h:5872
float m_contour_value_scale
for internal use only.
Definition: BOpcodeHandler.h:3013
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2914
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5106
short color_text_contrast_mask
For internal use only.
Definition: BOpcodeHandler.h:1398
unsigned short value
for active settings, on or off
Definition: BOpcodeHandler.h:7643
TK_Color_RGB()
Definition: BOpcodeHandler.h:2228
unsigned char m_cut_geometry
For internal use only.
Definition: BOpcodeHandler.h:3079
char m_type
Definition: BOpcodeHandler.h:7460
self-explanatory
Definition: BOpcodeHandler.h:1288
s3 texture compression (level 1,3 or 5 determined by TKO_Image_Formats)
Definition: BOpcodeHandler.h:7883
void SetNeedsTag(bool n)
Definition: BOpcodeHandler.h:192
""
Definition: BOpcodeHandler.h:8058
float const * GetRef2() const
Definition: BOpcodeHandler.h:7506
int m_current_value
for internal use only
Definition: BOpcodeHandler.h:5551
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1272
int m_ascii_progress
Tracks the amount of data that has been read/written so far by GetAscii functions.
Definition: BOpcodeHandler.h:76
void SetColorLineForcedLockMask(int m)
Definition: BOpcodeHandler.h:3732
char * GetView()
Definition: BOpcodeHandler.h:5807
self-explanatory
Definition: BOpcodeHandler.h:7574
""
Definition: BOpcodeHandler.h:8091
void SetWidthScale(float s)
Definition: BOpcodeHandler.h:6051
void SetColorEdgeLockMask(int m)
Definition: BOpcodeHandler.h:3306
void SetColorFaceContrastForcedLockValue(int v)
Definition: BOpcodeHandler.h:3835
self-explanatory
Definition: BOpcodeHandler.h:1321
unsigned char m_degree
Definition: BOpcodeHandler.h:6419
self-explanatory
Definition: BOpcodeHandler.h:1315
double const * GetDPoints() const
Definition: BOpcodeHandler.h:6621
type for 'antialias' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2802
int GetDegree() const
Definition: BOpcodeHandler.h:6461
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2644
void SetFollow(bool f)
Definition: BOpcodeHandler.h:1674
char * GetSpecularName()
Definition: BOpcodeHandler.h:2139
int m_name_length
Definition: BOpcodeHandler.h:8562
Handles the TKE_NURBS_Surface opcode.
Definition: BOpcodeHandler.h:6581
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2604
int m_reference_length
Definition: BOpcodeHandler.h:7934
float const * GetUKnots() const
Definition: BOpcodeHandler.h:6638
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2642
int GetColorWindowForcedLockValue() const
Definition: BOpcodeHandler.h:3817
Definition: BOpcodeHandler.h:2430
char * m_data
Definition: BOpcodeHandler.h:8907
float * m_points
internal use
Definition: BOpcodeHandler.h:6668
int GetShadowMapResolution() const
Definition: BOpcodeHandler.h:4367
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4493
void SetOptions(int o)
Definition: BOpcodeHandler.h:6714
type for 'antialias' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2800
int m_names_length
for internal use only
Definition: BOpcodeHandler.h:5953
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4515
ID_Key m_key
for internal use only
Definition: BOpcodeHandler.h:1698
void SetDField(double const f[])
Definition: BOpcodeHandler.h:5765
int GetShadowMapSamples() const
Definition: BOpcodeHandler.h:4372
double const * GetDTarget() const
Definition: BOpcodeHandler.h:5729
struct vlist_s * m_data
Definition: BOpcodeHandler.h:8882
unsigned char m_geometry_options
For internal use only.
Definition: BOpcodeHandler.h:3111
type for 'simple shadow' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2736
Handles the TKE_Color_By_Index and TKE_Color_By_Index_16 opcode.
Definition: BOpcodeHandler.h:2334
only use Truetype (or similar) fonts
Definition: BOpcodeHandler.h:5917
refer to ::HC_Define_Texture
Definition: BOpcodeHandler.h:8053
void SetGeometry(int m)
Definition: BOpcodeHandler.h:2354
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4549
void SetColorLineLockValue(int v)
Definition: BOpcodeHandler.h:3340
void SetIndices(int count)
Definition: BOpcodeHandler.h:5524
float const * GetSimpleReflectionPlane() const
Definition: BOpcodeHandler.h:4390
float m_vector_tolerance
internal use; culling vector tolerance
Definition: BOpcodeHandler.h:4595
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4497
int m_join_cutoff_angle
For internal use only.
Definition: BOpcodeHandler.h:3121
replace with a box (probably a halftone stipple)
Definition: BOpcodeHandler.h:5938
int GetHlrLinePattern() const
Definition: BOpcodeHandler.h:4075
float GetStereoDistance() const
Definition: BOpcodeHandler.h:4050
int m_levels_allocated
the number of entries allocated in m_num_primitives and m_primitives
Definition: BOpcodeHandler.h:1827
unsigned char horizontal_offset_units
specified with enum TKO_Font_Size_Units
Definition: BOpcodeHandler.h:7647
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2635
int GetRenderer() const
Definition: BOpcodeHandler.h:6094
void SetCylinderTessellations(int c, char const *n=0)
Definition: BOpcodeHandler.h:4229
void SetNearLimit(float l)
Definition: BOpcodeHandler.h:5786
char m_contour_value_adjustment
for internal use only.
Definition: BOpcodeHandler.h:3012
void SetExtraSpace(float s)
Definition: BOpcodeHandler.h:6056
#define ID_Key
Definition: BStream.h:229
unsigned short m_value
internal use
Definition: BOpcodeHandler.h:4768
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2847
void SetTarget(float x, float y, float z)
Definition: BOpcodeHandler.h:5714
int GetIndex() const
Definition: BOpcodeHandler.h:2374
type for NURBS curve options; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2925
lighting interpolation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2653
void SetMask(int m0, int m1=0, int m2=0)
Definition: BOpcodeHandler.h:3148
int m_cond_allocated
Definition: BOpcodeHandler.h:8499
int GetColorVertexContrastLockValue() const
Definition: BOpcodeHandler.h:3598
type for NURBS curve options; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2919
unsigned char m_flags
Definition: BOpcodeHandler.h:7247
char * name
the font name
Definition: BOpcodeHandler.h:7632
int GetLayout() const
Definition: BOpcodeHandler.h:6135
double * GetDPoints()
Definition: BOpcodeHandler.h:8705
self-explanatory
Definition: BOpcodeHandler.h:1292
wchar_t * GetString()
Definition: BOpcodeHandler.h:9056
all
Definition: BOpcodeHandler.h:1359
int GetColorFaceContrastForcedLockMask() const
Definition: BOpcodeHandler.h:3829
self-explanatory
Definition: BOpcodeHandler.h:1336
void SetTransmissionName(char const *name)
Definition: BOpcodeHandler.h:2161
type for 'mask transform' field; specisal HPS usage
Definition: BOpcodeHandler.h:2781
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2657
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, int variant)
Definition: BOpcodeHandler.h:1101
""
Definition: BOpcodeHandler.h:8062
self-explanatory
Definition: BOpcodeHandler.h:7571
type for HSR field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2686
refer to ::HC_Define_Texture
Definition: BOpcodeHandler.h:8071
void SetDCenter(double x, double y, double z)
Definition: BOpcodeHandler.h:6996
Points.
Definition: BOpcodeHandler.h:5167
double * m_dradii
Definition: BOpcodeHandler.h:7340
int GetMask() const
Definition: BOpcodeHandler.h:4789
force non-proportional spacing
Definition: BOpcodeHandler.h:5863
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5100
Utility class for managing HSF header information.
Definition: BOpcodeHandler.h:1006
mask for all 'mask transform' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2775
float const * GetUpVector() const
Definition: BOpcodeHandler.h:5739
options mask (unsigned char if file version is < 1805)
Definition: BOpcodeHandler.h:7867
self-explanatory
Definition: BOpcodeHandler.h:6724
unsigned short m_isoline_options
for internal use only.
Definition: BOpcodeHandler.h:3011
float GetVertexDecimation() const
Definition: BOpcodeHandler.h:4461
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2595
void SetPoints(float x1, float y1, float z1, float x2, float y2, float z2)
Definition: BOpcodeHandler.h:6316
int m_index
internal use
Definition: BOpcodeHandler.h:1795
float * GetPoints()
Definition: BOpcodeHandler.h:7377
int m_simple_reflection_visibility_value
For internal use only.
Definition: BOpcodeHandler.h:3103
void SetSimpleReflectionPlane(float const p[])
Definition: BOpcodeHandler.h:4388
float m_concentration
for internal use only
Definition: BOpcodeHandler.h:6754
void SetString(int length)
Definition: BOpcodeHandler.h:7700
int GetNumCylinderTessellations() const
Definition: BOpcodeHandler.h:4238
int GetChannels() const
Definition: BOpcodeHandler.h:2109
float * GetWeights()
Definition: BOpcodeHandler.h:6636
common/shared items; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1197
void SetTransform(int length)
Definition: BOpcodeHandler.h:8359
void SetToleranceUnits(int u)
Definition: BOpcodeHandler.h:6036
float const * GetDiffuse() const
Definition: BOpcodeHandler.h:2120
Object Space.
Definition: BOpcodeHandler.h:5164
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2858
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4519
int GetOptions() const
Definition: BOpcodeHandler.h:8715
void SetColorWindowForcedLockValue(int v)
Definition: BOpcodeHandler.h:3812
TKO_Attribute_Lock_Bits
Definition: BOpcodeHandler.h:1310
void SetTransform(char const *transform)
Definition: BOpcodeHandler.h:8354
Handles the TKE_Thumbnail opcode.
Definition: BOpcodeHandler.h:8384
Handles the TKE_User_Options opcode.
Definition: BOpcodeHandler.h:5412
hard edge angle limit; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2945
TKO_Geometry_Bits
Definition: BOpcodeHandler.h:1191
HT_NURBS_Trim * m_current_trim
Definition: BOpcodeHandler.h:6593
int GetTransforms() const
Definition: BOpcodeHandler.h:6073
void SetForcedLockValue(int v)
Definition: BOpcodeHandler.h:3632
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2614
add an underline to the font
Definition: BOpcodeHandler.h:5860
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5099
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2628
int m_face_displacement
For internal use only.
Definition: BOpcodeHandler.h:2988
type for contour options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2843
bump map
Definition: BOpcodeHandler.h:1296
TK_Dictionary()
Definition: BOpcodeHandler.h:1963
unsigned char m_byte
temporary
Definition: BOpcodeHandler.h:78
int GetGeometry() const
Definition: BOpcodeHandler.h:4901
////
Definition: BOpcodeHandler.h:825
Handles the TKE_Clip_Region opcodes.
Definition: BOpcodeHandler.h:8663
void SetSegment(int length)
Definition: BOpcodeHandler.h:1640
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4516
char const * GetString() const
Definition: BOpcodeHandler.h:9015
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5120
unsigned char m_display_list_level
For internal use only.
Definition: BOpcodeHandler.h:3124
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4500
int GetVDegree() const
Definition: BOpcodeHandler.h:6628
int GetValue() const
Definition: BOpcodeHandler.h:4630
char const * GetName() const
Definition: BOpcodeHandler.h:8469
in addition to the spacing specified within the font itself, the extra space to add between character...
Definition: BOpcodeHandler.h:5857
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2870
#define NS_TRIM_END
terminates an NS_TRIM_COLLECTION if one is active, otherwise terminates the list of trims ...
Definition: BOpcodeHandler.h:6486
char * GetImage()
Definition: BOpcodeHandler.h:8265
float * GetOrderedWeights()
Definition: BOpcodeHandler.h:4733
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2655
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4536
top of text is along region
Definition: BOpcodeHandler.h:7595
float const * GetMiddle() const
Definition: BOpcodeHandler.h:6965
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2650
TK_Color_Map()
Definition: BOpcodeHandler.h:2455
""
Definition: BOpcodeHandler.h:5046
stretched projection
Definition: BOpcodeHandler.h:5637
char * m_string
Definition: BOpcodeHandler.h:5316
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1214
use any available fonts
Definition: BOpcodeHandler.h:5915
double const * GetDPoint() const
Definition: BOpcodeHandler.h:6279
void SetDiffuse(float const rgb[])
Definition: BOpcodeHandler.h:2114
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4541
double const * GetDOrtho() const
Definition: BOpcodeHandler.h:7219
static void fix_in(double *d, int n)
for internal use only
Definition: BOpcodeHandler.h:565
int GetIndex() const
Definition: BOpcodeHandler.h:5274
void SetDepthRange(float n, float f)
Definition: BOpcodeHandler.h:4404
short color_vertex_mask
For internal use only.
Definition: BOpcodeHandler.h:1388
int GetMoveUp() const
Definition: BOpcodeHandler.h:4945
short color_face_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:1383
int GetColorFaceContrastForcedLockValue() const
Definition: BOpcodeHandler.h:3840
TK_Streaming()
Definition: BOpcodeHandler.h:5291
type for HSR field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2678
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4521
static void fix(short *s, int n)
for internal use only
Definition: BOpcodeHandler.h:535
float GetMaxDistance() const
Definition: BOpcodeHandler.h:4702
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4518
void GetOblique(float o[]) const
Definition: BOpcodeHandler.h:5783
refer to ::HC_Define_Shader
Definition: BOpcodeHandler.h:8075
void SetMoveUp(int m)
Definition: BOpcodeHandler.h:4940
int GetDecimation() const
Definition: BOpcodeHandler.h:8298
void SetRendererCutoffUnits(int u)
Definition: BOpcodeHandler.h:6107
void SetCutGeometry(int m)
Definition: BOpcodeHandler.h:4278
Portable Network Graphics.
Definition: BOpcodeHandler.h:7885
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4530
void SetEndNormal(int index, float const normal[]=0)
Definition: BOpcodeHandler.h:7429
s3 texture compression level 5
Definition: BOpcodeHandler.h:7856
TK_Bounding(unsigned char opcode, double center[], double radius)
Definition: BOpcodeHandler.h:6202
char * m_debug_string
Definition: BOpcodeHandler.h:69
char m_tiling
Definition: BOpcodeHandler.h:8207
void SetColorVertexForcedLockMask(int m)
Definition: BOpcodeHandler.h:3893
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4533
char const * GetSegment() const
Definition: BOpcodeHandler.h:1517
void SetSimpleReflection(int m)
Definition: BOpcodeHandler.h:4376
int GetGreekingLimitUnits() const
Definition: BOpcodeHandler.h:6083
Handles the TKE_Color_Map opcode.
Definition: BOpcodeHandler.h:2441
////
Definition: BOpcodeHandler.h:942
static TK_Status GetData(BStreamFileToolkit &tk, unsigned char &b)
Definition: BOpcodeHandler.h:302
static TK_Status PutData(BStreamFileToolkit &tk, unsigned int const *i, int n)
Definition: BOpcodeHandler.h:435
char * GetBumpName()
Definition: BOpcodeHandler.h:2202
char m_num_thresholds
For internal use only.
Definition: BOpcodeHandler.h:3036
int GetNURBSSurfaceTrimBudget() const
Definition: BOpcodeHandler.h:4109
float m_contour_value_translate
for internal use only.
Definition: BOpcodeHandler.h:3014
""
Definition: BOpcodeHandler.h:5079
int m_mask
internal use
Definition: BOpcodeHandler.h:2275
type for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2809
float const * GetLodCutoffs() const
Definition: BOpcodeHandler.h:4217
self-explanatory
Definition: BOpcodeHandler.h:1287
TK_Named(unsigned char opcode)
Definition: BOpcodeHandler.h:5249
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2887
bool m_follow
for internal use only
Definition: BOpcodeHandler.h:1609
type for contour options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2836
void SetAxis(float x1, float y1, float z1, float x2, float y2, float z2)
Definition: BOpcodeHandler.h:7262
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4480
void SetEmissionName(int length)
Definition: BOpcodeHandler.h:2178
char * m_name
Definition: BOpcodeHandler.h:7762
type for 'simple reflection' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2751
int * m_indices
for internal use only
Definition: BOpcodeHandler.h:5499
char const * GetString() const
Definition: BOpcodeHandler.h:7702
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2856
void SetDStart(double const s[])
Definition: BOpcodeHandler.h:6976
text spacing is afjusted to fit
Definition: BOpcodeHandler.h:7607
no fitting (direction only)
Definition: BOpcodeHandler.h:7606
void SetColorEdgeContrastForcedLockValue(int v)
Definition: BOpcodeHandler.h:3927
float m_width_scale
for internal use only
Definition: BOpcodeHandler.h:5959
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1213
int GetColorEdgeForcedLockValue() const
Definition: BOpcodeHandler.h:3725
void SetCurve(int degree, int control_count, float const points[]=0, float const weights[]=0, float const knots[]=0, float start=0.0f, float end=1.0f)
sets the curve properties
Definition: BOpcodeHandler.h:6447
self-explanatory
Definition: BOpcodeHandler.h:1313
ID_Key m_key
for internal use only
Definition: BOpcodeHandler.h:8502
char * m_name
Definition: BOpcodeHandler.h:7927
bool m_follow
for internal use only
Definition: BOpcodeHandler.h:1700
float GetSize() const
Definition: BOpcodeHandler.h:6023
int m_move_up
internal use; specifies what geometry is selectable on mouse move without buttons down...
Definition: BOpcodeHandler.h:4873
//– obsolete. this alias provided for source compatibility with old code
Definition: BOpcodeHandler.h:944
type for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2813
TK_Matrix(unsigned char opcode)
Definition: BOpcodeHandler.h:4973
void SetDMiddle(double const m[])
Definition: BOpcodeHandler.h:6984
unsigned short m_simple_reflection
For internal use only.
Definition: BOpcodeHandler.h:3096
common/shared items; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1194
float GetRadius() const
Definition: BOpcodeHandler.h:7159
float const * GetTarget() const
Definition: BOpcodeHandler.h:6791
int GetNURBSCurveContinuedBudget() const
Definition: BOpcodeHandler.h:4101
static float read_float(char const *cp, char **newcpp)
for internal use only
Definition: BOpcodeHandler.h:685
type for 'simple shadow' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2729
use whatever the display device prefers
Definition: BOpcodeHandler.h:5926
static TK_Status GetData(BStreamFileToolkit &tk, char *b, int n)
Definition: BOpcodeHandler.h:249
type for sphere tesselation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2943
common/shared items; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1198
perspective bit setting
Definition: BOpcodeHandler.h:5631
int * m_num_primitives
an array of ints to indicate the length of each row in m_primitives
Definition: BOpcodeHandler.h:1824
bool m_flag
for internal use only
Definition: BOpcodeHandler.h:5287
Lock_Masks m_lock
For internal use only.
Definition: BOpcodeHandler.h:2993
unsigned char * m_data
Definition: BOpcodeHandler.h:8819
float GetSize() const
Definition: BOpcodeHandler.h:5205
void SetGreenMapping(int p)
Definition: BOpcodeHandler.h:8306
void SetLodThresholds(int c, float const r[]=0)
Definition: BOpcodeHandler.h:4188
void SetRectangle(float const *rect)
Definition: BOpcodeHandler.h:8633
TK_Status SetDPoints(int count, double const points[]=0)
not specified
Definition: BOpcodeHandler.h:5925
void SetOptions(int at)
Definition: BOpcodeHandler.h:5399
Base class for shell and mesh.
Definition: BPolyhedron.h:22
char const * GetName() const
Definition: BOpcodeHandler.h:8245
char m_options
Definition: BOpcodeHandler.h:8665
void ** m_values
for internal use only
Definition: BOpcodeHandler.h:5548
char * m_string
Definition: BOpcodeHandler.h:1482
int m_hlr_options
For internal use only.
Definition: BOpcodeHandler.h:3000
double const * GetDPoints() const
Definition: BOpcodeHandler.h:8768
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1256
TK_User_Index_Data()
Definition: BOpcodeHandler.h:5558
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4505
void SetDCenter(double const c[])
Definition: BOpcodeHandler.h:7001
TKO_Bounding_Type_Options
Handles the TKE_Bounding and TKE_Bounding_Info opcodes.
Definition: BOpcodeHandler.h:6153
stretched bit setting
Definition: BOpcodeHandler.h:5632
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2872
void SetCompression(int c)
Definition: BOpcodeHandler.h:8040
refer to ::HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:5007
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2586
int GetHardExtent() const
Definition: BOpcodeHandler.h:4684
TK_Color_By_Index(unsigned char opcode)
Definition: BOpcodeHandler.h:2341
char * m_reference
Definition: BOpcodeHandler.h:7928
void SetSimpleReflectionPlane(float a, float b, float c, float d)
Definition: BOpcodeHandler.h:4381
shift of extended section
Definition: BOpcodeHandler.h:2931
refer to ::HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:5009
void SetRenderer(int r)
Definition: BOpcodeHandler.h:6092
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4511
type for NURBS curve options; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2926
int m_name_length
Definition: BOpcodeHandler.h:7765
Handles the TKE_Conditional_Action opcode.
Definition: BOpcodeHandler.h:5362
char const * GetName() const
Definition: BOpcodeHandler.h:5267
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1226
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4529
TK_Geometry_Options()
Definition: BOpcodeHandler.h:4775
""
Definition: BOpcodeHandler.h:8160
type for 'simple shadow' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2735
int GetUp() const
Definition: BOpcodeHandler.h:4923
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2900
""
Definition: BOpcodeHandler.h:5042
void SetEmissionName(char const *name)
Definition: BOpcodeHandler.h:2176
char * m_bytes
Definition: BOpcodeHandler.h:7764
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1223
int m_vertex_displacement
For internal use only.
Definition: BOpcodeHandler.h:2989
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1224
float GetIndex() const
Definition: BOpcodeHandler.h:2423
image is one-byte of luminance data per pixel
Definition: BOpcodeHandler.h:7852
void SetHardEdgeAngle(int m)
Definition: BOpcodeHandler.h:4267
type for 'cut geometry' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2712
float m_surface_max_trim_curve_deviation
For internal use only.
Definition: BOpcodeHandler.h:3056
void SetColorEdgeContrastLockValue(int v)
Definition: BOpcodeHandler.h:3524
double const * GetDPlane() const
Definition: BOpcodeHandler.h:6872
Handles the TKE_Start_User_Data opcode.
Definition: BOpcodeHandler.h:8816
float m_size
for internal use only
Definition: BOpcodeHandler.h:5955
float * GetKnots()
Definition: BOpcodeHandler.h:6567
int m_length
internal use
Definition: BOpcodeHandler.h:2443
type for 'antialias' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2803
type for NURBS curve options; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2933
refer to ::HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:5029
float const * GetPoints() const
Definition: BOpcodeHandler.h:6617
unsigned char m_format
internal use
Definition: BOpcodeHandler.h:2448
void SetName(char const *name)
Definition: BOpcodeHandler.h:8241
TK_Status SetPoints(int count, float const points[]=0)
""
Definition: BOpcodeHandler.h:8092
virtual TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Definition: BOpcodeHandler.h:205
void bytes_to_floats(unsigned char const *in, float *out, int count) const
for internal use only
Definition: BOpcodeHandler.h:625
int GetVSize() const
Definition: BOpcodeHandler.h:6632
void set_channel_rgb(channel &c, float r, float g, float b, int which_channel=-1)
internal use
Definition: BOpcodeHandler.h:2062
char * m_lookup
Definition: BOpcodeHandler.h:7763
char const * GetLookup() const
Definition: BOpcodeHandler.h:7830
TK_Window()
Definition: BOpcodeHandler.h:5822
void SetColorTextContrastLockValue(int v)
Definition: BOpcodeHandler.h:3616
TKO_Texture_Param_Functions
Definition: BOpcodeHandler.h:8108
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2873
int GetColorLineForcedLockValue() const
Definition: BOpcodeHandler.h:3748
type for 'technology' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2787
TK_Linear_Pattern(unsigned char opcode)
Definition: BOpcodeHandler.h:5220
int m_radius_count
Definition: BOpcodeHandler.h:7338
void SetSimpleShadowResolution(int m)
Definition: BOpcodeHandler.h:4318
void SetIndex(int index)
Definition: BOpcodeHandler.h:1716
float GetTolerance() const
Definition: BOpcodeHandler.h:6033
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2639
discard after load to graphics hardware as texture
Definition: BOpcodeHandler.h:7866
void SetDCenter(double const s[])
Definition: BOpcodeHandler.h:7081
void SetDRef2(double const r[])
Definition: BOpcodeHandler.h:7538
TK_Line_Style()
Definition: BOpcodeHandler.h:8569
Definition: BOpcodeHandler.h:5285
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2860
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2649
void SetDOrtho(double x, double y, double z)
Definition: BOpcodeHandler.h:7211
""
Definition: BOpcodeHandler.h:5082
float * GetRef1()
Definition: BOpcodeHandler.h:7497
char m_num_ratios
For internal use only.
Definition: BOpcodeHandler.h:3034
self-explanatory
Definition: BOpcodeHandler.h:1331
float GetHardEdgeAngle() const
Definition: BOpcodeHandler.h:4269
void SetGreekingLimitUnits(int u)
Definition: BOpcodeHandler.h:6081
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4503
int GetParameterFunction() const
Definition: BOpcodeHandler.h:8323
unsigned char m_extras
internal use; low bit set == left handed, second bit set == spriting
Definition: BOpcodeHandler.h:4585
void SetLineSpacing(float s)
Definition: BOpcodeHandler.h:6066
float const * GetMinor() const
Definition: BOpcodeHandler.h:7073
void SetEncoding(int e)
Definition: BOpcodeHandler.h:7723
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4513
Handles the TKE_Start_Compression and TKE_Stop_Compression opcodes.
Definition: BOpcodeHandler.h:1169
unsigned short * m_string
Definition: BOpcodeHandler.h:5461
static void fix_out(float *f, int n)
for internal use only
Definition: BOpcodeHandler.h:580
char const * GetName() const
Definition: BOpcodeHandler.h:7993
the size at which to draw characters
Definition: BOpcodeHandler.h:5848
self-explanatory
Definition: BOpcodeHandler.h:1327
void SetColorWindowContrastForcedLockMask(int m)
Definition: BOpcodeHandler.h:3847
void SetPreferences(int r1, int r2)
Definition: BOpcodeHandler.h:6118
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2638
TK_Texture()
Definition: BOpcodeHandler.h:8223
char * m_gooch_color_map_segment
For internal use only.
Definition: BOpcodeHandler.h:3075
void SetColorEdgeContrastForcedLockMask(int m)
Definition: BOpcodeHandler.h:3916
rotation, specified in degrees clockwise
Definition: BOpcodeHandler.h:7623
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: BOpcodeHandler.h:1182
void SetDRadius(double r)
Definition: BOpcodeHandler.h:7300
int m_allocated
Definition: BOpcodeHandler.h:8992
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2670
int GetLodThresholdType() const
Definition: BOpcodeHandler.h:4184
static TK_Status PutData(BStreamFileToolkit &tk, double const *d, int n)
Definition: BOpcodeHandler.h:406
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5103
int GetPreference() const
Definition: BOpcodeHandler.h:6115
float m_gooch_diffuse_weight
For internal use only.
Definition: BOpcodeHandler.h:3074
""
Definition: BOpcodeHandler.h:8101
void SetColorEdgeContrastLockMask(int m)
Definition: BOpcodeHandler.h:3513
char const * GetName() const
Definition: BOpcodeHandler.h:8588
the font name
Definition: BOpcodeHandler.h:7616
self-explanatory
Definition: BOpcodeHandler.h:1351
int GetLodNumThresholds() const
Definition: BOpcodeHandler.h:4197
void SetAmbientUpVector(float x, float y, float z)
Definition: BOpcodeHandler.h:4422
int GetFormat() const
Definition: BOpcodeHandler.h:2471
static TK_Status PutData(BStreamFileToolkit &tk, int const &i)
Definition: BOpcodeHandler.h:444
unsigned char * GetUserData()
Definition: BOpcodeHandler.h:8849
float const * GetLodRatios() const
Definition: BOpcodeHandler.h:4177
int GetColorTextContrastLockValue() const
Definition: BOpcodeHandler.h:3621
void SetColorWindowLockMask(int m)
Definition: BOpcodeHandler.h:3398
int m_total
Definition: BOpcodeHandler.h:8731
int GetColorMarkerContrastForcedLockValue() const
Definition: BOpcodeHandler.h:3978
HT_NURBS_Trim * GetList()
Definition: BOpcodeHandler.h:6571
void SetIndex(int i)
Definition: BOpcodeHandler.h:1809
float const * getSimpleShadowLight() const
Definition: BOpcodeHandler.h:4331
static TK_Status PutData(BStreamFileToolkit &tk, float const *f, int n)
Definition: BOpcodeHandler.h:383
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1210
refer to ::HC_Set_Window_Pattern
Definition: BOpcodeHandler.h:5036
float GetStereoSeparation() const
Definition: BOpcodeHandler.h:4046
char const * GetEnvironmentName() const
Definition: BOpcodeHandler.h:2191
void SetSimpleShadowOpacity(float o)
Definition: BOpcodeHandler.h:4354
void SetColorWindowContrastLockValue(int v)
Definition: BOpcodeHandler.h:3455
double const * GetDOrigin() const
Definition: BOpcodeHandler.h:7518
only used by certain handlers
Definition: BOpcodeHandler.h:5169
char * GetName()
Definition: BOpcodeHandler.h:8471
void SetStart(float x, float y, float z)
Definition: BOpcodeHandler.h:6923
void GetTarget(float t[]) const
Definition: BOpcodeHandler.h:5721
char const * GetSpecularName() const
Definition: BOpcodeHandler.h:2137
//// reserved for future expansion
Definition: BOpcodeHandler.h:952
//– would like this to be obsolete, but...
Definition: BOpcodeHandler.h:945
void SetIndex(int i)
Definition: BOpcodeHandler.h:2372
int m_substage
Definition: BOpcodeHandler.h:7673
float const * GetPoint() const
Definition: BOpcodeHandler.h:6272
int GetFormat() const
Definition: BOpcodeHandler.h:8429
int m_options
internal use
Definition: BOpcodeHandler.h:1771
type for transparency field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2698
char * GetComment()
Definition: BOpcodeHandler.h:1127
short color_line_mask
For internal use only.
Definition: BOpcodeHandler.h:1374
self-explanatory
Definition: BOpcodeHandler.h:7850
""
Definition: BOpcodeHandler.h:8163
float const * GetEnd() const
Definition: BOpcodeHandler.h:6967
self-explanatory
Definition: BOpcodeHandler.h:1317
type for contour options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2834
void SetSimpleShadowPlane(float const p[])
Definition: BOpcodeHandler.h:4341
float const * GetFogLimits() const
Definition: BOpcodeHandler.h:3220
#define TKO_Rendo_Extended
Definition: BOpcodeHandler.h:2620
int GetCount() const
Definition: BOpcodeHandler.h:5526
void SetDEnd(double x, double y, double z)
Definition: BOpcodeHandler.h:6988
void SetColorForcedLockMask(int m)
Definition: BOpcodeHandler.h:3663
type for 'mask transform' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2772
refer to ::HC_Define_Texture
Definition: BOpcodeHandler.h:8143
int m_lod_options_mask
For internal use only.
Definition: BOpcodeHandler.h:3031
int GetTiling() const
Definition: BOpcodeHandler.h:8333
self-explanatory
Definition: BOpcodeHandler.h:7570
TKO_Text_Region_Fit_Options
Definition: BOpcodeHandler.h:7605
float * m_isoline_colors
for internal use only.
Definition: BOpcodeHandler.h:3019
void SetColorEdgeLockValue(int v)
Definition: BOpcodeHandler.h:3317
add a strikethrough to the font
Definition: BOpcodeHandler.h:5861
void SetDisplayListLevel(int m)
Definition: BOpcodeHandler.h:4299
TK_URL()
Definition: BOpcodeHandler.h:8958
int GetProjection() const
Definition: BOpcodeHandler.h:5797
int m_allocated
Definition: BOpcodeHandler.h:8953
void SetSphereTessellations(int c, char const *n=0)
Definition: BOpcodeHandler.h:4246
void SetImage(char const *image)
Definition: BOpcodeHandler.h:8259
int GetLength()
Definition: BOpcodeHandler.h:5392
float const * GetTextRegionPoints() const
Definition: BOpcodeHandler.h:7732
texture interpolation value; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2562
void SetRedMapping(int p)
Definition: BOpcodeHandler.h:8301
lighting interpolation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2583
Handles the TKE_Delete_Object opcode.
Definition: BOpcodeHandler.h:1793
void SetMinor(float const m[])
Definition: BOpcodeHandler.h:7071
double * GetDPoints()
Definition: BOpcodeHandler.h:7400
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1279
float * GetOrigin()
Definition: BOpcodeHandler.h:7486
void SetColorMarkerContrastForcedLockValue(int v)
Definition: BOpcodeHandler.h:3973
refer to ::HC_Define_Texture
Definition: BOpcodeHandler.h:8158
double const * GetDMinor() const
Definition: BOpcodeHandler.h:7101
TK_Default()
Definition: BOpcodeHandler.h:972
self-explanatory
Definition: BOpcodeHandler.h:6154
oblique x setting
Definition: BOpcodeHandler.h:5640
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2869
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4483
type for transparency field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2701
color index interpolation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2573
type for 'cut geometry' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2719
void SetColorFaceForcedLockMask(int m)
Definition: BOpcodeHandler.h:3686
relative sizing
Definition: BOpcodeHandler.h:7592
void SetSegment(char const *segment)
Definition: BOpcodeHandler.h:1635
short color_cut_face_mask
For internal use only.
Definition: BOpcodeHandler.h:1402
type for NURBS curve options; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2940
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2593
void GetDUpVector(double u[]) const
Definition: BOpcodeHandler.h:5751
HLONG GetValue() const
Definition: BOpcodeHandler.h:5624
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2629
unsigned char m_heuristic
For internal use only.
Definition: BOpcodeHandler.h:3047
ID_Key m_key
for internal use only
Definition: BOpcodeHandler.h:1605
char * GetDefinition()
Definition: BOpcodeHandler.h:8480
int m_count
for internal use only
Definition: BOpcodeHandler.h:5546
void SetApplicationMode(int p)
Definition: BOpcodeHandler.h:8341
void SetEnvironmentName(char const *name)
Definition: BOpcodeHandler.h:2187
Handles the TKE_Spot_Light opcode.
Definition: BOpcodeHandler.h:6746
TK_Camera(unsigned char opcode=TKE_Camera)
Definition: BOpcodeHandler.h:5675
void SetRenderers(int r1, int r2)
Definition: BOpcodeHandler.h:6097
void SetMirror(float const rgb[])
Definition: BOpcodeHandler.h:2144
int GetType() const
Definition: BOpcodeHandler.h:6549
void SetSpecularName(char const *name)
Definition: BOpcodeHandler.h:2131
float const * GetPosition() const
Definition: BOpcodeHandler.h:8012
double const * GetDTarget() const
Definition: BOpcodeHandler.h:6799
float const * GetOrigin() const
Definition: BOpcodeHandler.h:7484
int m_length
Definition: BOpcodeHandler.h:1480
void Record_Instance(BStreamFileToolkit &tk, ID_Key key, int variant, int val1, int val2, int val3) const
Definition: BOpcodeHandler.h:663
draw only the outline (i.e. don't fill)
Definition: BOpcodeHandler.h:5859
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: BOpcodeHandler.h:1105
short color_text_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:1399
internal use, indicates bits which require TKO_Geo_Extended
Definition: BOpcodeHandler.h:1202
int GetBufferSizeLimit() const
Definition: BOpcodeHandler.h:4040
void SetMirrorName(int length)
Definition: BOpcodeHandler.h:2148
char const * GetBytes() const
Definition: BOpcodeHandler.h:7812
bool GetFollow()
Definition: BOpcodeHandler.h:1676
char * m_string
Definition: BOpcodeHandler.h:7664
env map
Definition: BOpcodeHandler.h:1357
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4552
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2591
s3 texture compression level 1
Definition: BOpcodeHandler.h:7854
TK_Text_Font()
Definition: BOpcodeHandler.h:5982
int GetGeometry() const
Definition: BOpcodeHandler.h:2101
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4527
int m_length
Definition: BOpcodeHandler.h:5460
float * m_values
internal use
Definition: BOpcodeHandler.h:2445
int GetColorEdgeContrastLockMask() const
Definition: BOpcodeHandler.h:3518
void SetSize(float s)
Definition: BOpcodeHandler.h:6021
float const * GetAxis() const
Definition: BOpcodeHandler.h:7170
int m_move_down
internal use; specifies what geometry is selectable on mouse button down and move. For internal use only.
Definition: BOpcodeHandler.h:4872
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1270
type for 'technology' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2785
void SetOptions(int length)
Definition: BOpcodeHandler.h:5441
refer to ::HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:5023
int m_cond_length
Definition: BOpcodeHandler.h:1693
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2589
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1235
void SetDRef1(double x, double y, double z)
Definition: BOpcodeHandler.h:7523
int GetColorWindowContrastLockValue() const
Definition: BOpcodeHandler.h:3460
extends font options to a second byte
Definition: BOpcodeHandler.h:5854
int GetColorTextForcedLockValue() const
Definition: BOpcodeHandler.h:3794
try to use polyline outline around the character exterior
Definition: BOpcodeHandler.h:5929
void SetLodMaxDegree(int v)
Definition: BOpcodeHandler.h:4137
void SetSegment(int length)
Definition: BOpcodeHandler.h:1512
lighting interpolation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2581
float m_simple_reflection_hither
For internal use only.
Definition: BOpcodeHandler.h:3100
void SetSimpleShadow(int m)
Definition: BOpcodeHandler.h:4304
void SetNURBSCurveBudget(int b)
Definition: BOpcodeHandler.h:4095
int GetNURBSOptionsMask() const
Definition: BOpcodeHandler.h:4089
void SetGeometry(int m)
Definition: BOpcodeHandler.h:2089
mask for HSR field
Definition: BOpcodeHandler.h:2689
internal use, indicates shift for placement of extended section
Definition: BOpcodeHandler.h:1219
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5107
""
Definition: BOpcodeHandler.h:5085
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2906
void SetCutGeometryLevel(int m)
Definition: BOpcodeHandler.h:4283
refer to ::HC_Conditional_Action
Definition: BOpcodeHandler.h:5349
unsigned char m_depth_peeling_algorithm
For internal use only.
Definition: BOpcodeHandler.h:3118
void SetIndex(int i)
Definition: BOpcodeHandler.h:5272
int m_value
internal use
Definition: BOpcodeHandler.h:4579
void SetColorMarkerLockMask(int m)
Definition: BOpcodeHandler.h:3352
void SetDPosition(double x, double y, double z)
Definition: BOpcodeHandler.h:5704
type for 'buffer options' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2795
Handles the TKE_Line opcode.
Definition: BOpcodeHandler.h:6296
float m_slant
for internal use only
Definition: BOpcodeHandler.h:5958
float const * GetAxis() const
Definition: BOpcodeHandler.h:7271
int GetColorEdgeContrastForcedLockValue() const
Definition: BOpcodeHandler.h:3932
virtual TK_Status Execute(BStreamFileToolkit &tk)
HT_NURBS_Trim * m_current_trim
Definition: BOpcodeHandler.h:6520
void SetDown(int m)
Definition: BOpcodeHandler.h:4907
TKO_Compression
Definition: BOpcodeHandler.h:7879
int GetCulling() const
Definition: BOpcodeHandler.h:4660
float GetHlrFaceSortingAlgorithm() const
Definition: BOpcodeHandler.h:4079
////
Definition: BOpcodeHandler.h:827
void SetSize(int w, int h)
Definition: BOpcodeHandler.h:8420
refer to ::HC_Set_Text_Alignment
Definition: BOpcodeHandler.h:5121
""
Definition: BOpcodeHandler.h:5076
refer to ::HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:5025
int GetExtraSpaceUnits() const
Definition: BOpcodeHandler.h:6063
double const * GetDPoints() const
Definition: BOpcodeHandler.h:6458
float const * GetOrtho() const
Definition: BOpcodeHandler.h:7181
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1268
type for 'mask transform' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2767
void SetDRadius(double r)
Definition: BOpcodeHandler.h:7195
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2651
int GetLayout() const
Definition: BOpcodeHandler.h:8328
float const * GetCenter() const
Definition: BOpcodeHandler.h:7055
""
Definition: BOpcodeHandler.h:8135
char * m_string
Definition: BOpcodeHandler.h:5367
int m_substage
Definition: BOpcodeHandler.h:8196
void SetColorTextForcedLockValue(int v)
Definition: BOpcodeHandler.h:3789
int m_substage
internal use; To track the subcases
Definition: BOpcodeHandler.h:2059
void SetSpecular(float const rgb[])
Definition: BOpcodeHandler.h:2129
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4470
void SetSizeUnits(int u)
Definition: BOpcodeHandler.h:6026
void SetEmission(float r, float g, float b)
Definition: BOpcodeHandler.h:2172
void SetLodRatio(float r)
Definition: BOpcodeHandler.h:4164
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4473
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1209
void SetDPoint(double const p[])
Definition: BOpcodeHandler.h:6277
TK_Visibility(void)
Definition: BOpcodeHandler.h:4819
int GetColorMarkerForcedLockValue() const
Definition: BOpcodeHandler.h:3771
int m_control_point_count
Definition: BOpcodeHandler.h:6420
char m_index
internal use
Definition: BOpcodeHandler.h:5141
refer to ::HC_Set_Face_Pattern
Definition: BOpcodeHandler.h:5024
char * GetReference()
Definition: BOpcodeHandler.h:8004
void SetSimpleShadowColor(float const rgb[])
Definition: BOpcodeHandler.h:4349
void SetColorLineContrastForcedLockMask(int m)
Definition: BOpcodeHandler.h:3939
float GetStart() const
Definition: BOpcodeHandler.h:6469
int m_related
internal use
Definition: BOpcodeHandler.h:4581
int * m_indices
for internal use only
Definition: BOpcodeHandler.h:5547
void SetUp(int m)
Definition: BOpcodeHandler.h:4918
void SetMask(int m)
Definition: BOpcodeHandler.h:5996
void SetGeometryOptionsMask(int m)
Definition: BOpcodeHandler.h:4262
float const * GetPoints() const
Definition: BOpcodeHandler.h:6385
Lock_Masks m_forced
For internal use only.
Definition: BOpcodeHandler.h:2994
int GetOptions() const
Definition: BOpcodeHandler.h:6819
int GetLength()
Definition: BOpcodeHandler.h:5447
void SetValueScale(float v1, float v2)
Definition: BOpcodeHandler.h:8336
void SetCenter(float x, float y, float z)
Definition: BOpcodeHandler.h:6947
type for HSR field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2684
float const * GetLodBounding() const
Definition: BOpcodeHandler.h:4161
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2668
""
Definition: BOpcodeHandler.h:5073
int GetLockMask() const
Definition: BOpcodeHandler.h:3226
""
Definition: BOpcodeHandler.h:5084
char * m_camera
Definition: BOpcodeHandler.h:8190
float const * GetRadii() const
Definition: BOpcodeHandler.h:7387
TKO_Spot_Light_Options
Definition: BOpcodeHandler.h:6723
int m_image_length
Definition: BOpcodeHandler.h:8193
self-explanatory
Definition: BOpcodeHandler.h:7861
int GetIndex() const
Definition: BOpcodeHandler.h:5157
TK_Selectability(void)
Definition: BOpcodeHandler.h:4878
TKO_Font_Type
Handles the TKE_Font opcodes.
Definition: BOpcodeHandler.h:7748
void SetColorEdgeForcedLockValue(int v)
Definition: BOpcodeHandler.h:3720
extended bit
Definition: BOpcodeHandler.h:8068
float const * GetScreenRange() const
Definition: BOpcodeHandler.h:4417
char const * GetString() const
Definition: BOpcodeHandler.h:2498
type for transparency field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2704
int m_length
Definition: BOpcodeHandler.h:8952
float const * GetLodThresholds() const
Definition: BOpcodeHandler.h:4199
unsigned char m_format
internal use
Definition: BOpcodeHandler.h:1954
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2910
unsigned short m_shadow_map_resolution
For internal use only.
Definition: BOpcodeHandler.h:3093
float m_hlr_face_displacement
For internal use only.
Definition: BOpcodeHandler.h:3002
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1238
int m_tmp
Definition: BOpcodeHandler.h:7674
Handles the TKE_Ellipse and TKE_Elliptical_Arc opcodes.
Definition: BOpcodeHandler.h:7030
float const * GetCenter() const
Definition: BOpcodeHandler.h:6969
void SetDRef2(double x, double y, double z)
Definition: BOpcodeHandler.h:7534
int GetBufferOptionsValue() const
Definition: BOpcodeHandler.h:4036
""
Definition: BOpcodeHandler.h:8161
World Space.
Definition: BOpcodeHandler.h:5170
extended bit for HLR suboptions; refer to HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2824
float horizontal_offset
offset, positive or negative, from the standard position. units are specified separately in horizonta...
Definition: BOpcodeHandler.h:7637
type for NURBS curve options; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2934
self-explanatory
Definition: BOpcodeHandler.h:1334
int GetSize() const
Definition: BOpcodeHandler.h:8851
self-explanatory
Definition: BOpcodeHandler.h:6732
type for 'antialias' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2805
char * m_name
The name of the color channel.
Definition: BOpcodeHandler.h:2039
refer to ::HC_Define_Texture
Definition: BOpcodeHandler.h:8131
Definition: BOpcodeHandler.h:7631
void SetDAxis(double x, double y, double z)
Definition: BOpcodeHandler.h:7200
""
Definition: BOpcodeHandler.h:5080
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: BOpcodeHandler.h:2004
Truevision TGA.
Definition: BOpcodeHandler.h:7857
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2912
void SetDMajor(double x, double y, double z)
Definition: BOpcodeHandler.h:7086
void SetForcedLockMask(int m)
Definition: BOpcodeHandler.h:3627
void SetSpecular(float r, float g, float b)
Definition: BOpcodeHandler.h:2127
void SetColorMarkerLockValue(int v)
Definition: BOpcodeHandler.h:3363
int * m_lengths
Definition: BOpcodeHandler.h:8732
void **const GetValues()
Definition: BOpcodeHandler.h:5589
int m_cond_allocated
Definition: BOpcodeHandler.h:1602
vetical fitting is specified
Definition: BOpcodeHandler.h:7597
void SetTransforms(int t)
Definition: BOpcodeHandler.h:6071
self-explanatory
Definition: BOpcodeHandler.h:8374
Handles the TKE_Grid opcode.
Definition: BOpcodeHandler.h:7458
char * GetCamera()
Definition: BOpcodeHandler.h:8274
void SetBumpName(int length)
Definition: BOpcodeHandler.h:2198
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2903
static TK_Status PutData(BStreamFileToolkit &tk, short const &s)
Definition: BOpcodeHandler.h:441
TKO_Clip_Region_Options
Definition: BOpcodeHandler.h:8649
static TK_Status PutData(BStreamFileToolkit &tk, unsigned char const *b, int n)
Definition: BOpcodeHandler.h:429
type for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2811
lighting interpolation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2576
float color[3]
the color. RGB triplet
Definition: BOpcodeHandler.h:7634
void adjust_written(BStreamFileToolkit &tk, int count)
for internal use only
Definition: BOpcodeHandler.h:645
float const * GetPoints() const
Definition: BOpcodeHandler.h:8693
color interpolation value; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2569
""
Definition: BOpcodeHandler.h:8063
int m_size
internal use
Definition: BOpcodeHandler.h:1989
int GetColorLineForcedLockMask() const
Definition: BOpcodeHandler.h:3737
BBaseOpcodeHandler * m_referee
for internal use only
Definition: BOpcodeHandler.h:1699
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2647
int m_from_index
internal use
Definition: BOpcodeHandler.h:1767
""
Definition: BOpcodeHandler.h:8066
float m_hlr_dim_factor
For internal use only.
Definition: BOpcodeHandler.h:3001
type for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2818
bool m_follow
for internal use only
Definition: BOpcodeHandler.h:8504
float const * GetSimpleShadowPlane() const
Definition: BOpcodeHandler.h:4343
int m_curve_continued_budget
For internal use only.
Definition: BOpcodeHandler.h:3053
void SetCounts(int c1, int c2)
Definition: BOpcodeHandler.h:7546
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2667
mask for HLR suboptions; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2822
self-explanatory
Definition: BOpcodeHandler.h:1326
int m_length
Definition: BOpcodeHandler.h:5366
char * m_segment
Definition: BOpcodeHandler.h:8496
common/shared items; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1195
float GetRadius() const
Definition: BOpcodeHandler.h:7280
float const * GetPlanes() const
Definition: BOpcodeHandler.h:6875
unsigned char m_depth_peeling_layers
For internal use only.
Definition: BOpcodeHandler.h:3116
self-explanatory
Definition: BOpcodeHandler.h:6731
void SetCenter(float const s[])
Definition: BOpcodeHandler.h:7151
self-explanatory
Definition: BOpcodeHandler.h:6736
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2913
int GetColorLockValue() const
Definition: BOpcodeHandler.h:3276
type for 'technology' field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2783
int GetGeometry() const
Definition: BOpcodeHandler.h:2309
""
Definition: BOpcodeHandler.h:8150
virtual TK_Status Write(BStreamFileToolkit &tk)=0
type for isoline options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2864
internal use, indicates bits which require TKO_Geo_Extended_Colors
Definition: BOpcodeHandler.h:1217
extra item for color; refer to ::HC_Set_Color for a description
Definition: BOpcodeHandler.h:1222
TK_Status GetGeneral(BStreamFileToolkit &tk)
Definition: BOpcodeHandler.h:318
void SetLodBounding(float x1, float y1, float z1, float x2, float y2, float z2)
Definition: BOpcodeHandler.h:4150
int m_isoline_position_count
for internal use only.
Definition: BOpcodeHandler.h:3016
void SetDField(double w, double h)
Definition: BOpcodeHandler.h:5763
float * GetPoints()
Definition: BOpcodeHandler.h:6457
double const * GetDRef1() const
Definition: BOpcodeHandler.h:7529
double const * GetDAxis() const
Definition: BOpcodeHandler.h:7208
Flags
Definition: BOpcodeHandler.h:7225
refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2615
short color_simple_reflection_mask
For internal use only.
Definition: BOpcodeHandler.h:1400
void SetColorTextLockMask(int m)
Definition: BOpcodeHandler.h:3375
void SetLodTolerance(float v)
Definition: BOpcodeHandler.h:4141
int GetTessellationMask() const
Definition: BOpcodeHandler.h:4225
void SetPosition(float x, float y, float z)
Definition: BOpcodeHandler.h:6770
void SetOptions(int o)
Definition: BOpcodeHandler.h:6647
int m_cond_length
Definition: BOpcodeHandler.h:1601
float m_curve_max_length
For internal use only.
Definition: BOpcodeHandler.h:3062
int m_isoline_pattern_count
for internal use only.
Definition: BOpcodeHandler.h:3020
char * GetBytes()
Definition: BOpcodeHandler.h:7986
//// last opcode value reserved for private use
Definition: BOpcodeHandler.h:948
double const * GetDEnd() const
Definition: BOpcodeHandler.h:7016
bool Find_Instance(BStreamFileToolkit &tk, int val1, int val2, int val3)
Definition: BOpcodeHandler.h:668
int m_substage
tracks progress of reading individual opcode handler arrays.
Definition: BOpcodeHandler.h:1828
int GetLodMaxDegree() const
Definition: BOpcodeHandler.h:4139
void SetDPlane(double const p[])
Definition: BOpcodeHandler.h:6867
int m_culling
internal use; culling options
Definition: BOpcodeHandler.h:4586
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4496
""
Definition: BOpcodeHandler.h:8064
float * m_knots
Definition: BOpcodeHandler.h:6425
char m_options
internal use
Definition: BOpcodeHandler.h:6670
void SetPosition(float x, float y, float z)
Definition: BOpcodeHandler.h:5694
static TK_Status GetData(BStreamFileToolkit &tk, char &c)
Definition: BOpcodeHandler.h:293
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4523
the offset from the standard position
Definition: BOpcodeHandler.h:7625
void SetFaceDisplacement(int d)
Definition: BOpcodeHandler.h:3196
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2881
char * GetBytes()
Definition: BOpcodeHandler.h:7814
Handles the TKE_User_Value opcode.
Definition: BOpcodeHandler.h:5605
hard edge angle limit; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2948
void SetHlrFaceSortingAlgorithm(int a)
Definition: BOpcodeHandler.h:4077
short color_cut_edge_value
For internal use only.
Definition: BOpcodeHandler.h:1405
int GetPixelThreshold() const
Definition: BOpcodeHandler.h:4668
void SetValues(int count, float const values[]=0)
Definition: BOpcodeHandler.h:2477
char * m_string
Definition: BOpcodeHandler.h:5415
void SetColorTextContrastLockMask(int m)
Definition: BOpcodeHandler.h:3605
Handles the TKE_Color_By_FIndex opcode.
Definition: BOpcodeHandler.h:2383
double const * GetDCenter() const
Definition: BOpcodeHandler.h:7018
int m_mask
internal use
Definition: BOpcodeHandler.h:4578
void SetImageTintColor(float r, float g, float b)
Definition: BOpcodeHandler.h:4438
unsigned char m_cut_geometry_level
For internal use only.
Definition: BOpcodeHandler.h:3080
short color_vertex_contrast_value
For internal use only.
Definition: BOpcodeHandler.h:1397
TKO_Font_Renderers
Definition: BOpcodeHandler.h:5913
char * m_data
Definition: BOpcodeHandler.h:8446
short color_vertex_value
For internal use only.
Definition: BOpcodeHandler.h:1389
int GetColorMarkerLockValue() const
Definition: BOpcodeHandler.h:3368
type for 'cut geometry' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2713
""
Definition: BOpcodeHandler.h:5054
Portable Network Graphics.
Definition: BOpcodeHandler.h:7858
int GetTextRegionCount() const
Definition: BOpcodeHandler.h:7730
void SetType(int t)
Definition: BOpcodeHandler.h:7800
type for 'simple reflection' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2761
float m_tolerance
for internal use only
Definition: BOpcodeHandler.h:5956
void SetDOrigin(double x, double y, double z)
Definition: BOpcodeHandler.h:7512
void SetSimpleShadowPlane(float a, float b, float c, float d)
Definition: BOpcodeHandler.h:4334
void SetFormat(int f)
Definition: BOpcodeHandler.h:2469
int GetOptions() const
Definition: BOpcodeHandler.h:6716
int GetVersion() const
Definition: BStreamFileToolkit.h:972
void SetCenter(float x, float y, float z)
Definition: BOpcodeHandler.h:7147
""
Definition: BOpcodeHandler.h:8147
int m_isoline_color_count
for internal use only.
Definition: BOpcodeHandler.h:3018
TKE_Object_Types
Opcodes stored in the file.
Definition: BOpcodeHandler.h:823
static TK_Status PutData(BStreamFileToolkit &tk, unsigned short const &s)
Definition: BOpcodeHandler.h:450
void SetDPoint(double x, double y, double z)
Definition: BOpcodeHandler.h:6275
Capping_Options
Definition: BOpcodeHandler.h:7313
char * GetOptions()
Definition: BOpcodeHandler.h:5445
type for contour options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2835
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4546
char const * GetShaderSource() const
Definition: BOpcodeHandler.h:8254
char * GetMirrorName()
Definition: BOpcodeHandler.h:2154
type for LOD options; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2904
double const * GetDPoints() const
Definition: BOpcodeHandler.h:6393
self-explanatory
Definition: BOpcodeHandler.h:8372
type for 'buffer options' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2796
color index interpolation value; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2571
void GetPosition(float p[]) const
Definition: BOpcodeHandler.h:5701
entity is double precision
Definition: BStream.h:332
double * GetDMatrix()
Definition: BOpcodeHandler.h:4998
float * GetLodCutoffs()
Definition: BOpcodeHandler.h:4219
bool m_jpeg_native
Definition: BOpcodeHandler.h:7944
self-explanatory
Definition: BOpcodeHandler.h:7583
type for 'simple reflection' field; refer to ::HC_Set_Rendering_Options for description ...
Definition: BOpcodeHandler.h:2753
refer to ::HC_Set_Line_Pattern
Definition: BOpcodeHandler.h:5015
type for HSR field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2681
void SetGeometry(int m)
Definition: BOpcodeHandler.h:4832
void SetColorVertexLockValue(int v)
Definition: BOpcodeHandler.h:3501
int GetColorEdgeContrastForcedLockMask() const
Definition: BOpcodeHandler.h:3921
int m_invisible
internal use; specifies what geometry is selectable even when invisible. For internal use only...
Definition: BOpcodeHandler.h:4874
type for HSR field; refer to ::HC_Set_Rendering_Options for description
Definition: BOpcodeHandler.h:2683
TKO_Font_Preferences
Definition: BOpcodeHandler.h:5924
int GetColorFaceContrastLockValue() const
Definition: BOpcodeHandler.h:3437
void SetSimpleShadowColor(float r, float g, float b)
Definition: BOpcodeHandler.h:4346
void SetDCenter(double x, double y, double z)
Definition: BOpcodeHandler.h:7077
extra item for visibility; refer to ::HC_Set_Visibility for a description
Definition: BOpcodeHandler.h:1252
void SetMask(int m)
Definition: BOpcodeHandler.h:4787
void SetRGB(float r, float g, float b)
Definition: BOpcodeHandler.h:2259
void SetDOrtho(double const s[])
Definition: BOpcodeHandler.h:7217
refer to ::HC_Set_Heuristics
Definition: BOpcodeHandler.h:4471