Introduction

Getting Started

Programming Guides

API Reference

Additional Resources

HOpcodeHandler.h
1 // Copyright (c) Tech Soft 3D, Inc.
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 HOPCODE_HANDLER
11 #define HOPCODE_HANDLER
12 
13 #ifndef HBINFILETK_TOOLKIT
14  #include "HStreamFileToolkit.h"
15 #endif
16 
17 #include <limits>
18 
19 inline bool safe (double v, bool check_roundoff = false) {
20  if (std::abs(v) > (std::numeric_limits<float>::max)())
21  return false;
22  if (check_roundoff) {
23  if (std::abs(v - float(v)) > std::numeric_limits<float>::epsilon() * 0.001 * std::abs(v))
24  return false;
25  }
26  return true;
27 }
28 
29 inline bool safe (int c, double const * vs, bool check_roundoff = false) {
30  while (c-- > 0)
31  if (!safe(*vs++, check_roundoff))
32  return false;
33  return true;
34 }
35 
36 
37 
38 
39 
41 
43 
53 class HBINFILETK_API HTK_Open_Segment : public TK_Open_Segment {
54  public:
56  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0)
57  { return TK_Open_Segment::Interpret(tk, key, variant); }
58  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special);
59  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
60 };
61 
62 
64 
74 class HBINFILETK_API HTK_Close_Segment : public TK_Close_Segment {
75  public:
77  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
78  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
79  { return TK_Close_Segment::Interpret(tk, key, special); }
80  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
81 };
82 
84 class HBINFILETK_API HTK_Reopen_Segment : public TK_Reopen_Segment {
85  public:
87  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
88  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
89  { return TK_Reopen_Segment::Interpret(tk, key, special); }
90  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
91 };
92 
94 
104 class HBINFILETK_API HTK_Referenced_Segment : public TK_Referenced_Segment {
105  protected:
106  int mh_stage;
109  public:
111  HTK_Referenced_Segment (char opcode) : TK_Referenced_Segment (opcode), mh_stage (0) {}
112 
115  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
116  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
117  { return TK_Referenced_Segment::Interpret(tk, key, special); }
118  void Reset ();
119  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
120 
123  void SetRoot (HC_KEY root) { m_root = root; }
124 
126  HC_KEY GetRoot () const { return m_root; }
127 };
128 
130 
140 class HBINFILETK_API HTK_Reference : public TK_Reference {
141  protected:
142  int mh_stage;
145  public:
147  HTK_Reference () : TK_Reference (), mh_stage (0), mh_owner (-1) {}
148 
151  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
152  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
153  { return TK_Reference::Interpret(tk, key, special); }
154  bool NeedsContext (BStreamFileToolkit & tk) const;
155  void Reset ();
156  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
157 
158  bool Direct() const { return m_referee == 0; }
159 };
160 
162 
172 class HBINFILETK_API HTK_Instance : public TK_Instance {
173  public:
175  HTK_Instance (int from_index=0, int from_variant=0, int to_index=0, int to_variant=0,
176  int options=0, float const * xform=0);
177 
179  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant);
180  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
181  { return TK_Instance::Interpret(tk, key, special); }
182  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
183 };
184 
185 
187 class HBINFILETK_API HTK_Delete_Object : public TK_Delete_Object {
188  public:
190  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
191  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
192  { return TK_Delete_Object::Interpret(tk, key, special); }
193  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
194 };
195 
198 
206 class HBINFILETK_API HTK_LOD : public TK_LOD {
207  public:
209  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
210  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
211  { return TK_LOD::Interpret(tk, key, special); }
212  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
213 };
214 
215 
218 
228 class HBINFILETK_API HTK_Renumber : public TK_Renumber {
229  public:
231  HTK_Renumber (unsigned char opcode, HC_KEY key = 0) : TK_Renumber (opcode, key) {}
232 
234  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
235  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
236  { return TK_Renumber::Interpret(tk, key, special); }
237  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
238 };
239 
241 
243 
253 class HBINFILETK_API HTK_Color : public TK_Color {
254  friend class HTK_Color_Composite;
255  public:
257  HTK_Color (int mask=0, int channels=0)
258  : TK_Color () { m_mask = mask; m_channels = (short)channels; }
259 
261  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
262  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
263  { return TK_Color::Interpret(tk, key, special); }
264  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
265 
266 };
267 
269 
279 class HBINFILETK_API HTK_Color_RGB : public TK_Color_RGB {
280  public:
282  HTK_Color_RGB (int mask=0, float const * rgb=0)
283  : TK_Color_RGB () {
284  m_mask = mask;
285  if (rgb != 0) {
286  m_rgb[0] = rgb[0]; m_rgb[1] = rgb[1]; m_rgb[2] = rgb[2];
287  }
288  }
289 
291  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
292  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
293  { return TK_Color_RGB::Interpret(tk, key, special); }
294  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
295 };
296 
298 
308 class HBINFILETK_API HTK_Color_By_Value : public TK_Color_By_Value {
309  public:
311  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
312  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
313  { return TK_Color_By_Value::Interpret(tk, key, special); }
314  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
315 };
316 
318 
328 class HBINFILETK_API HTK_Color_By_Index : public TK_Color_By_Index {
329  public:
331  HTK_Color_By_Index (unsigned char opcode, int mask=0, int index=0)
332  : TK_Color_By_Index (opcode) { m_mask = mask; m_index = index; }
333 
335  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
336  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
337  { return TK_Color_By_Index::Interpret(tk, key, special); }
338  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
339 };
340 
341 
343 
353 class HBINFILETK_API HTK_Color_By_FIndex : public TK_Color_By_FIndex {
354  public:
356  HTK_Color_By_FIndex (int mask=0, float index=0.0f)
357  : TK_Color_By_FIndex () { m_mask = mask; m_index = index; }
358 
360  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
361  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
362  { return TK_Color_By_FIndex::Interpret(tk, key, special); }
363  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
364 };
365 
369 class HBINFILETK_API HTK_Color_Composite : public BBaseOpcodeHandler {
370  protected:
371  BBaseOpcodeHandler * m_parts[16];
372 
373  public:
376 
380  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
381  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
382  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
383  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
384 };
385 
386 
389 
399 class HBINFILETK_API HTK_Color_Map : public TK_Color_Map {
400  public:
402  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
403  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
404  { return TK_Color_Map::Interpret(tk, key, special); }
405  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
406 };
407 
410 
420 class HBINFILETK_API HTK_Callback : public TK_Callback {
421  public:
423  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
424  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
425  { return TK_Callback::Interpret(tk, key, special); }
426  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
427 };
428 
430 
432 
442 class HBINFILETK_API HTK_Rendering_Options : public TK_Rendering_Options {
443  public:
445  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
446  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
447  { return TK_Rendering_Options::Interpret(tk, key, special); }
448  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
449 };
450 
453 
463 class HBINFILETK_API HTK_Heuristics : public TK_Heuristics {
464  public:
466  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
467  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
468  { return TK_Heuristics::Interpret(tk, key, special); }
469  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
470 };
471 
474 
484 class HBINFILETK_API HTK_Geometry_Options : public TK_Geometry_Options {
485  public:
487  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
488  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
489  { return TK_Geometry_Options::Interpret(tk, key, special); }
490  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
491 };
492 
495 
505 class HBINFILETK_API HTK_Visibility : public TK_Visibility {
506  public:
508  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
509  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
510  { return TK_Visibility::Interpret(tk, key, special); }
511  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
512 };
513 
516 
526 class HBINFILETK_API HTK_Selectability : public TK_Selectability {
527  public:
529  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
530  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
531  { return TK_Selectability::Interpret(tk, key, special); }
532  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
533 };
534 
536 
546 class HBINFILETK_API HTK_Matrix : public TK_Matrix {
547  public:
549  HTK_Matrix (unsigned char opcode) : TK_Matrix (opcode) {}
550 
552  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
553  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
554  { return TK_Matrix::Interpret(tk, key, special); }
555  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
556 };
557 
559 
564 class HBINFILETK_API HTK_Enumerated : public TK_Enumerated {
565  public:
567  HTK_Enumerated (unsigned char opcode) : TK_Enumerated (opcode) {}
568 
570  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key=-1, int variant=0);
571  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
572  { return TK_Enumerated::Interpret(tk, key, special); }
573  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
574 };
575 
577 class HBINFILETK_API HTK_Size : public TK_Size {
578  public:
580  HTK_Size (unsigned char opcode) : TK_Size (opcode) {}
581 
583  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
584  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
585  { return TK_Size::Interpret(tk, key, special); }
586  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
587 };
588 
590 
594 class HBINFILETK_API HTK_Linear_Pattern : public TK_Linear_Pattern {
595  public:
597  HTK_Linear_Pattern (unsigned char opcode) : TK_Linear_Pattern (opcode) {}
598 
600  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key=-1, int variant=0);
601  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
602  { return TK_Linear_Pattern::Interpret(tk, key, special); }
603  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
604 };
605 
607 
610 class HBINFILETK_API HTK_Named : public TK_Named {
611  public:
613  HTK_Named (unsigned char opcode) : TK_Named (opcode) {}
614 
616  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key=-1, int variant=0);
617  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
618  { return TK_Named::Interpret(tk, key, special); }
619  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
620 };
621 
622 
624 class HBINFILETK_API HTK_Streaming : public TK_Streaming {
625  public:
627  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
628  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
629  { return TK_Streaming::Interpret(tk, key, special); }
630  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
631 };
632 
635 
645 class HBINFILETK_API HTK_Conditions : public TK_Conditions {
646  public:
648  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
649  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
650  { return TK_Conditions::Interpret(tk, key, special); }
651  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
652 };
653 
656 
666 class HBINFILETK_API HTK_Conditional_Action : public TK_Conditional_Action {
667  friend class HTK_Conditional_Actions;
668  public:
670  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
671  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
672  { return TK_Conditional_Action::Interpret(tk, key, special); }
673  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
674 };
675 
679 class HBINFILETK_API HTK_Conditional_Actions : public BBaseOpcodeHandler {
680  protected:
681  BBaseOpcodeHandler * m_parts[16];
682 
683  public:
686 
690  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
691  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
692  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
693  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
694 };
695 
698 
708 class HBINFILETK_API HTK_User_Options : public TK_User_Options {
709  public:
711  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
712  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
713  { return TK_User_Options::Interpret(tk, key, special); }
714  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
715 };
716 
719 
729 class HBINFILETK_API HTK_Unicode_Options : public TK_Unicode_Options {
730  public:
732  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
733  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
734  { return TK_Unicode_Options::Interpret(tk, key, special); }
735  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
736 };
737 
739 
749 class HBINFILETK_API HTK_User_Index : public TK_User_Index {
750  public:
752  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
753  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
754  { return TK_User_Index::Interpret(tk, key, special); }
755  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
756 };
757 
759 
769 class HBINFILETK_API HTK_User_Index_Data : public TK_User_Index_Data {
770 public:
772  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
773  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
774  { return TK_User_Index_Data::Interpret(tk, key, special); }
775  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
776 };
777 
779 
789 class HBINFILETK_API HTK_User_Value : public TK_User_Value {
790  public:
792  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
793  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
794  { return TK_User_Value::Interpret(tk, key, special); }
795  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
796 };
797 
799 
809 class HBINFILETK_API2 HTK_Camera : public TK_Camera {
810  public:
812  HTK_Camera (unsigned char opcode = TKE_Camera) : TK_Camera (opcode) {}
813 
815  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
816  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
817  { return TK_Camera::Interpret(tk, key, special); }
818  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
819 };
820 
821 
823 
833 class HBINFILETK_API HTK_Window : public TK_Window {
834  public:
836  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
837  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
838  { return TK_Window::Interpret(tk, key, special); }
839  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
840 };
841 
842 
844 
855 class HBINFILETK_API HTK_Clip_Region : public TK_Clip_Region {
856  public:
858  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
859  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
860  { return TK_Clip_Region::Interpret(tk, key, special); }
861  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
862 };
863 
864 
866 
877 class HBINFILETK_API HTK_Complex_Clip_Region : public TK_Complex_Clip_Region {
878  public:
880  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
881  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
882  { return TK_Complex_Clip_Region::Interpret(tk, key, special); }
883  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
884 };
885 
886 
888 
898 class HBINFILETK_API HTK_Clip_Rectangle : public TK_Clip_Rectangle {
899  public:
901  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
902 };
903 
904 
906 
916 class HBINFILETK_API HTK_Text_Font : public TK_Text_Font {
917  public:
919  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
920  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
921  { return TK_Text_Font::Interpret(tk, key, special); }
922  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
923 };
924 
926 
928 
942 class HBINFILETK_API2 HTK_Bounding : public TK_Bounding {
943  public:
945  HTK_Bounding (unsigned char opcode)
946  : TK_Bounding (opcode) {}
948  HTK_Bounding (unsigned char opcode, float * min, float * max)
949  : TK_Bounding (opcode, min, max) {}
951  HTK_Bounding (unsigned char opcode, float * center, float radius)
952  : TK_Bounding (opcode, center, radius) {}
953 
955  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
956  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
957  { return TK_Bounding::Interpret(tk, key, special); }
958  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
959 };
960 
963 
973 class HBINFILETK_API HTK_Point : public TK_Point {
974  public:
976  HTK_Point (unsigned char opcode) : TK_Point (opcode) {}
977 
979  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
980  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
981  { return TK_Point::Interpret(tk, key, special); }
982  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
983 };
984 
985 
987 
997 class HBINFILETK_API HTK_Line : public TK_Line {
998  public:
1000  HTK_Line (unsigned char opcode = TKE_Line) : TK_Line (opcode) {}
1001 
1003  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1004  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1005  { return TK_Line::Interpret(tk, key, special); }
1006  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1007 };
1008 
1010 
1020 class HBINFILETK_API HTK_Polypoint : public TK_Polypoint {
1021  public:
1023  HTK_Polypoint (unsigned char opcode) : TK_Polypoint (opcode) {}
1024 
1026  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1027  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1028  { return TK_Polypoint::Interpret(tk, key, special); }
1029  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1030 };
1031 
1033 
1043 class HBINFILETK_API HTK_NURBS_Curve : public TK_NURBS_Curve {
1044  public:
1045 
1047  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1048  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1049  { return TK_NURBS_Curve::Interpret(tk, key, special); }
1050  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1051 };
1052 
1054 
1064 class HBINFILETK_API HTK_NURBS_Surface : public TK_NURBS_Surface {
1065  protected:
1066 
1068  TK_Status interpret_trim (BStreamFileToolkit & tk, int);
1070  TK_Status execute_trim (BStreamFileToolkit & tk, HT_NURBS_Trim *);
1071 
1072  public:
1073 
1075  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1076  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1077  { return TK_NURBS_Surface::Interpret(tk, key, special); }
1078  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1079 };
1080 
1082 
1092 class HBINFILETK_API HTK_Area_Light : public TK_Area_Light {
1093  public:
1094 
1096  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1097  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1098  { return TK_Area_Light::Interpret(tk, key, special); }
1099  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1100 };
1101 
1103 
1113 class HBINFILETK_API HTK_Spot_Light : public TK_Spot_Light {
1114  public:
1116  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1117  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1118  { return TK_Spot_Light::Interpret(tk, key, special); }
1119  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1120 };
1121 
1123 
1133 class HBINFILETK_API HTK_Cutting_Plane : public TK_Cutting_Plane {
1134  public:
1136  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1137  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1138  { return TK_Cutting_Plane::Interpret(tk, key, special); }
1139  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1140 };
1141 
1143 
1153 class HBINFILETK_API HTK_Circle : public TK_Circle {
1154  public:
1156  HTK_Circle (unsigned char opcode) : TK_Circle (opcode) {}
1157 
1159  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1160  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1161  { return TK_Circle::Interpret(tk, key, special); }
1162  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1163 };
1164 
1166 
1176 class HBINFILETK_API HTK_Ellipse : public TK_Ellipse {
1177  public:
1179  HTK_Ellipse (unsigned char opcode) : TK_Ellipse (opcode) {}
1180 
1182  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1183  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1184  { return TK_Ellipse::Interpret(tk, key, special); }
1185  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1186 };
1187 
1189 
1199 class HBINFILETK_API HTK_Sphere : public TK_Sphere {
1200  public:
1203 
1205  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1206  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1207  { return TK_Sphere::Interpret(tk, key, special); }
1208  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1209 };
1210 
1212 
1222 class HBINFILETK_API HTK_Cylinder : public TK_Cylinder {
1223  public:
1226 
1228  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1229  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1230  { return TK_Cylinder::Interpret(tk, key, special); }
1231  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1232 };
1233 
1235 
1245 class HBINFILETK_API HTK_PolyCylinder : public TK_PolyCylinder {
1246  public:
1249 
1251  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1252  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1253  { return TK_PolyCylinder::Interpret(tk, key, special); }
1254  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1255 };
1256 
1258 
1268 class HBINFILETK_API HTK_Grid : public TK_Grid {
1269  public:
1271  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1272  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1273  { return TK_Grid::Interpret(tk, key, special); }
1274  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1275 };
1276 
1279 
1289 class HBINFILETK_API HTK_Text : public TK_Text {
1290  public:
1292  HTK_Text (unsigned char opcode) : TK_Text (opcode) {}
1293 
1295  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1296  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1297  { return TK_Text::Interpret(tk, key, special); }
1298  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1299 };
1300 
1303 
1313 class HBINFILETK_API HTK_Font : public TK_Font {
1314  public:
1316  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0)
1317  { return TK_Font::Interpret(tk, key, variant); }
1318  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special);
1319  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1320 };
1321 
1322 
1325 
1335 class HBINFILETK_API2 HTK_Image : public TK_Image {
1336  public:
1337  HTK_Image () {
1338  m_jpeg_native = true;
1339  }
1340 
1342  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1343  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1344  { return TK_Image::Interpret(tk, key, special); }
1345  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1346 };
1347 
1348 
1351 
1361 class HBINFILETK_API2 HTK_Texture : public TK_Texture {
1362  protected:
1363  int mh_stage;
1366 
1367  public:
1368  HTK_Texture () : mh_stage (0), m_referee (0) {}
1369  ~HTK_Texture ();
1370 
1373  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0)
1374  { return TK_Texture::Interpret(tk, key, variant); }
1375  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special);
1376  void Reset ();
1377  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1378 };
1379 
1381 class HBINFILETK_API2 HTK_Texture_Definitions : public BBaseOpcodeHandler {
1382  protected:
1386 
1387  public:
1388  HTK_Texture_Definitions (bool shader = false);
1390 
1394  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1395  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1396  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
1397 
1398  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1399 };
1400 
1403 
1413 class HBINFILETK_API2 HTK_Glyph_Definition : public TK_Glyph_Definition {
1414  public:
1416  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0)
1417  { return TK_Glyph_Definition::Interpret(tk, key, variant); }
1418  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special);
1419  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1420 };
1421 
1424 class HBINFILETK_API2 HTK_Glyph_Definitions : public BBaseOpcodeHandler {
1425  protected:
1428  public:
1431 
1435  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1436  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1437  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
1438  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1439 };
1440 
1443 
1453 class HBINFILETK_API2 HTK_Shape_Definition : public TK_Shape_Definition {
1454  public:
1456  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0)
1457  { return TK_Shape_Definition::Interpret(tk, key, variant); }
1458  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special);
1459  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1460 };
1461 
1464 class HBINFILETK_API2 HTK_Shape_Definitions : public BBaseOpcodeHandler {
1465  protected:
1468  public:
1471 
1475  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1476  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1477  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
1478  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1479 };
1480 
1483 
1493 class HBINFILETK_API2 HTK_Named_Style_Def : public TK_Named_Style_Def {
1494  protected:
1496  int mh_stage;
1498  public:
1500  HTK_Named_Style_Def () : TK_Named_Style_Def (), mh_stage (0) {}
1501 
1504  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0)
1505  { return TK_Named_Style_Def::Interpret(tk, key, variant); }
1506  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special);
1507  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1508 
1509  void SetRoot (HC_KEY root) { m_root = root; }
1510  HC_KEY GetRoot () const { return m_root; }
1511 
1512  void Reset ();
1513 };
1514 
1517 class HBINFILETK_API2 HTK_Named_Style_Defs : public BBaseOpcodeHandler {
1518  protected:
1522  public:
1525 
1529  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1530  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1531  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
1532  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1533 
1534  void SetRoot (HC_KEY root) { m_root = root; }
1535  HC_KEY GetRoot () const { return m_root; }
1536 };
1537 
1538 
1541 
1551 class HBINFILETK_API2 HTK_Line_Style : public TK_Line_Style {
1552  public:
1554  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0)
1555  { return TK_Line_Style::Interpret(tk, key, variant); }
1556  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special);
1557  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1558 };
1559 
1562 class HBINFILETK_API2 HTK_Line_Styles : public BBaseOpcodeHandler {
1563  protected:
1566  public:
1567  HTK_Line_Styles ();
1568  ~HTK_Line_Styles ();
1569 
1573  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, int variant=0);
1574  TK_Status Interpret (BStreamFileToolkit & tk, ID_Key key, char const * special)
1575  { return BBaseOpcodeHandler::Interpret(tk, key, special); }
1576  TK_Status Clone (BStreamFileToolkit & tk, BBaseOpcodeHandler **handler) const;
1577 };
1578 
1579 #endif //HOPCODE_HANDLER
1580 
BBaseOpcodeHandler ** m_parts
Array of line pattern def handlers.
Definition: HOpcodeHandler.h:1564
virtual bool NeedsContext(BStreamFileToolkit &tk) const
Definition: BOpcodeHandler.h:227
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:816
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:467
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, int variant=0)
Definition: HOpcodeHandler.h:1373
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:488
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:312
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:88
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:571
HC_KEY m_root
relative root
Definition: HOpcodeHandler.h:1521
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:628
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1117
HC_KEY m_root
Definition: HOpcodeHandler.h:107
ID_Key mh_owner
Definition: HOpcodeHandler.h:143
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1296
HTK_Bounding(unsigned char opcode)
Definition: HOpcodeHandler.h:945
Provides HOOPS/3dGS-specific handling of the TKE_User_Options opcode.
Definition: HOpcodeHandler.h:708
HTK_Size(unsigned char opcode)
Definition: HOpcodeHandler.h:580
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Handles the TKE_Reopen_Segment opcode.
Definition: BOpcodeHandler.h:1257
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:403
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Provides HOOPS/3dGS-specific handling of the TKE_Delete_Object opcode.
Definition: HOpcodeHandler.h:187
Handles the TKE_Close_Segment opcode.
Definition: BOpcodeHandler.h:1229
Handles the TKE_Geometry_Options opcode.
Definition: BOpcodeHandler.h:3971
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, int variant=0)
Definition: HOpcodeHandler.h:1316
HTK_Cylinder()
Definition: HOpcodeHandler.h:1225
Definition: HOpcodeHandler.h:1424
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:180
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Handles the TKE_Cylinder opcode.
Definition: BOpcodeHandler.h:6175
Handles the TKE_Color_By_Value opcode.
Definition: BOpcodeHandler.h:1958
int mh_stage
Definition: HOpcodeHandler.h:1363
Provides HOOPS/3dGS-specific handling of the TKE_Geometry_Options opcode.
Definition: HOpcodeHandler.h:484
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:649
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:446
Provides HOOPS/3dGS-specific handling of the TKE_Glyph_Definition.
Definition: HOpcodeHandler.h:1413
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Definition: BOpcodeHandler.h:4299
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Provides HOOPS/3dGS-specific handling of the TKE_Text and TKE_Text_With_Encoding opcodes.
Definition: HOpcodeHandler.h:1289
Handles the TKE_Reference opcodes.
Definition: BOpcodeHandler.h:1382
Provides HOOPS/3dGS-specific handling of the TKE_LOD opcode.
Definition: HOpcodeHandler.h:206
The BStreamFileToolkit class provides support for importing/exporting HOOPS Stream File information...
Definition: BStreamFileToolkit.h:367
Handles the TKE_Selectability opcode.
Definition: BOpcodeHandler.h:4073
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:262
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:116
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Handles the TKE_Glyph_Definition opcode.
Definition: BOpcodeHandler.h:7157
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:191
Provides HOOPS/3dGS-specific handling of the TKE_Reopen_Segment opcode.
Definition: HOpcodeHandler.h:84
Provides HOOPS/3dGS-specific handling of the TKE_Color_RGB opcode.
Definition: HOpcodeHandler.h:279
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:773
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Handles the TKE_Line_Style opcode.
Definition: BOpcodeHandler.h:7325
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Definition: HOpcodeHandler.h:1381
Provides HOOPS/3dGS-specific handling of the TKE_Rendering_Options opcode.
Definition: HOpcodeHandler.h:442
HC_KEY GetRoot() const
Definition: HOpcodeHandler.h:126
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Provides HOOPS/3dGS-specific handling of the TKE_NURBS_Surface opcode.
Definition: HOpcodeHandler.h:1064
Handles the TKE_Texture opcode.
Definition: BOpcodeHandler.h:6910
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:793
Handles the TKE_Inlude_Segment TKE_Named_Style and TKE_Style_Segment opcodes.
Definition: BOpcodeHandler.h:1288
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1229
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Provides HOOPS/3dGS-specific handling of the TKE_Camera opcode.
Definition: HOpcodeHandler.h:809
Provides HOOPS/3dGS-specific handling of the TKE_Streaming_Mode opcode.
Definition: HOpcodeHandler.h:624
Handles the TKE_LOD opcode.
Definition: BOpcodeHandler.h:1507
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, int variant=0)
Definition: HOpcodeHandler.h:1416
Does not handle any top level opcodes, but rather only the trim types allowable on nurbs surfaces...
Definition: BOpcodeHandler.h:5456
HC_KEY m_root
Definition: HOpcodeHandler.h:1497
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1004
Provides HOOPS/3dGS-specific handling of the TKE_PolyCylinder opcode.
Definition: HOpcodeHandler.h:1245
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Handles the TKE_Callback opcode.
Definition: BOpcodeHandler.h:2194
Provides HOOPS/3dGS-specific handling of various opcodes.
Definition: HOpcodeHandler.h:564
Provides HOOPS/3dGS-specific handling of the TKE_Spot_Light opcode.
Definition: HOpcodeHandler.h:1113
int m_num_parts
number of handlers
Definition: HOpcodeHandler.h:1565
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:617
int mh_stage
Definition: HOpcodeHandler.h:142
Handles the TKE_Open_Segment opcode.
Definition: BOpcodeHandler.h:1170
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, int variant=0)
Definition: HOpcodeHandler.h:1554
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:712
Handles the TKE_Sphere opcode.
Definition: BOpcodeHandler.h:6054
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
int mh_stage
Definition: HOpcodeHandler.h:1496
Handles the TKE_User_Index opcode.
Definition: BOpcodeHandler.h:4544
Provides HOOPS/3dGS-specific handling of the TKE_Callback opcode.
Definition: HOpcodeHandler.h:420
Provides HOOPS/3dGS-specific handling of the TKE_Visibility opcode.
Definition: HOpcodeHandler.h:505
Provides HOOPS/3dGS-specific handling of the TKE_Image opcode.
Definition: HOpcodeHandler.h:1335
TK_Status Write(BStreamFileToolkit &tk)
Handles the TKE_Image opcode.
Definition: BOpcodeHandler.h:6779
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1252
BBaseOpcodeHandler * m_referee
for internal use only
Definition: HOpcodeHandler.h:1364
Handles the TKE_Font opcode.
Definition: BOpcodeHandler.h:6658
virtual TK_Status Read(BStreamFileToolkit &tk)=0
Handles the TKE_Unicode_Options opcode.
Definition: BOpcodeHandler.h:4506
#define HC_KEY
BBaseOpcodeHandler ** m_parts
Array of shape def handlers.
Definition: HOpcodeHandler.h:1466
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, int variant=0)
Definition: HOpcodeHandler.h:56
Handles the TKE_Color opcode.
Definition: BOpcodeHandler.h:1713
Handles the TKE_Heuristics opcode.
Definition: BOpcodeHandler.h:3785
int m_num_parts
number of handlers
Definition: HOpcodeHandler.h:1427
Handles the TKE_Circle, TKE_Circular_Arc, TKE_Circular_Chord and TKE_Circular_Wedge opcodes...
Definition: BOpcodeHandler.h:5833
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Write(BStreamFileToolkit &tk)
Provides HOOPS/3dGS-specific handling of the TKE_Named_Style_Defs.
Definition: HOpcodeHandler.h:1493
Definition: BOpcodeHandler.h:4272
Provides HOOPS/3dGS-specific handling of the TKE_Ellipse and TKE_Elliptical_Arc opcodes.
Definition: HOpcodeHandler.h:1176
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Handles the TKE_Area_Light opcode.
Definition: BOpcodeHandler.h:5626
Handles the TKE_Cutting_Plane opcode.
Definition: BOpcodeHandler.h:5770
virtual TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, int variant=0)
Provides HOOPS/3dGS-specific handling of the TKE_Renumber_Key_Local and TKE_Renumber_Key_Global opcod...
Definition: HOpcodeHandler.h:228
Handles the TKE_Named_Style_Def opcode.
Definition: BOpcodeHandler.h:7255
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1183
Provides HOOPS/3dGS-specific handling of the TKE_Texture.
Definition: HOpcodeHandler.h:1551
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:152
Provides HOOPS/3dGS-specific handling of the TKE_Reopen_Segment opcodes.
Definition: HOpcodeHandler.h:104
BBaseOpcodeHandler ** m_parts
Array of glyph def handlers.
Definition: HOpcodeHandler.h:1426
Handles the TKE_Renumber_Key_Global, TKE_Renumber_Key_Local, and TKE_Priority opcodes.
Definition: BOpcodeHandler.h:1579
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Handles the TKE_Complex_Clip_Region opcodes.
Definition: BOpcodeHandler.h:7481
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1048
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:210
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Definition: BOpcodeHandler.h:4213
Handles the TKE_Repeat_Object opcode.
Definition: BOpcodeHandler.h:1450
Provides HOOPS/3dGS-specific handling of the TKE_Selectability opcode.
Definition: HOpcodeHandler.h:526
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Handles the TKE_NURBS_Curve opcode.
Definition: BOpcodeHandler.h:5369
Handles the TKE_Conditions opcode.
Definition: BOpcodeHandler.h:4371
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:553
int m_num_parts
number of handlers
Definition: HOpcodeHandler.h:1384
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1530
Provides HOOPS/3dGS-specific handling of the TKE_Bounding and TKE_Bounding_Info opcodes.
Definition: HOpcodeHandler.h:942
Provides HOOPS/3dGS-specific handling of the TKE_Sphere opcode.
Definition: HOpcodeHandler.h:1199
Provides HOOPS/3dGS-specific handling of the TKE_NURBS_Curve opcode.
Definition: HOpcodeHandler.h:1043
Provides HOOPS/3dGS-specific handling of the TKE_Edge_Pattern opcode.
Definition: HOpcodeHandler.h:594
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Write(BStreamFileToolkit &tk)
Provides HOOPS/3dGS-specific handling of the TKE_Color opcode.
Definition: HOpcodeHandler.h:253
HC_KEY m_key
segment key
Definition: HOpcodeHandler.h:1495
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:881
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:980
Handles the TKE_Clip_Rectangle opcode.
Definition: BOpcodeHandler.h:7375
Handles the TKE_Text_Font opcode.
Definition: BOpcodeHandler.h:4895
int mh_stage
Definition: HOpcodeHandler.h:106
Handles the TKE_User_Index opcode.
Definition: BOpcodeHandler.h:4592
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, int variant=0)
Definition: HOpcodeHandler.h:1504
Definition: BOpcodeHandler.h:4240
Provides HOOPS/3dGS-specific handling of the TKE_User_Value opcode.
Definition: HOpcodeHandler.h:789
Definition: HOpcodeHandler.h:1517
Provides HOOPS/3dGS-specific handling of the TKE_Polyine and TKE_Polygon opcodes. ...
Definition: HOpcodeHandler.h:1020
Provides HOOPS/3dGS-specific handling of the TKE_Color_By_Value opcode.
Definition: HOpcodeHandler.h:308
Provides HOOPS/3dGS-specific handling of the TKE_Close_Segment opcode.
Definition: HOpcodeHandler.h:74
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1076
Handles the TKE_Marker, TKE_Text_Path TKE_Distant_Light, and TKE_Local_Light opcodes.
Definition: BOpcodeHandler.h:5189
HTK_Color(int mask=0, int channels=0)
Definition: HOpcodeHandler.h:257
HTK_Named(unsigned char opcode)
Definition: HOpcodeHandler.h:613
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1574
Provides HOOPS/3dGS-specific handling of the TKE_Conditional_Action opcode.
Definition: HOpcodeHandler.h:666
HTK_Referenced_Segment(char opcode)
Definition: HOpcodeHandler.h:111
Provides HOOPS/3dGS-specific handling of the TKE_Shape_Definition.
Definition: HOpcodeHandler.h:1453
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:601
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:235
Provides HOOPS/3dGS-specific handling of the TKE_Window opcode.
Definition: HOpcodeHandler.h:833
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:837
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Definition: HOpcodeHandler.h:1464
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Handles the TKE_Modelling_Matrix and TKE_Texture_Matrix opcodes.
Definition: BOpcodeHandler.h:4172
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:509
Definition: HOpcodeHandler.h:369
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
HTK_Circle(unsigned char opcode)
Definition: HOpcodeHandler.h:1156
Handles the TKE_Color opcode.
Definition: BOpcodeHandler.h:1906
Provides HOOPS/3dGS-specific handling of the TKE_Clip_Rectangle opcode.
Definition: HOpcodeHandler.h:898
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1476
HTK_PolyCylinder()
Definition: HOpcodeHandler.h:1248
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:361
Handles the TKE_PolyCylinder opcode.
Definition: BOpcodeHandler.h:6267
HTK_Line(unsigned char opcode=TKE_Line)
Definition: HOpcodeHandler.h:1000
Provides HOOPS/3dGS-specific handling of the TKE_Matrix opcode.
Definition: HOpcodeHandler.h:546
HTK_Renumber(unsigned char opcode, HC_KEY key=0)
Definition: HOpcodeHandler.h:231
Provides HOOPS/3dGS-specific handling of the TKE_Line_Weight, TKE_Edge_Weight, TKE_Marker_Size and TK...
Definition: HOpcodeHandler.h:577
Handles the TKE_Polyline and TKE_Polygon opcodes.
Definition: BOpcodeHandler.h:5308
HTK_Polypoint(unsigned char opcode)
Definition: HOpcodeHandler.h:1023
Provides HOOPS/3dGS-specific handling of the TKE_Text_Font opcode.
Definition: HOpcodeHandler.h:916
Handles the TKE_Bounding and TKE_Bounding_Info opcodes.
Definition: BOpcodeHandler.h:5135
Handles the TKE_Shape_Definition opcode.
Definition: BOpcodeHandler.h:7206
Handles the TKE_Camera opcode.
Definition: BOpcodeHandler.h:4682
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:78
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Provides HOOPS/3dGS-specific handling of the TKE_Clip_Region opcode.
Definition: HOpcodeHandler.h:855
Provides HOOPS/3dGS-specific handling of the TKE_Color_By_Index and TKE_Color_By_Index_16 opcode...
Definition: HOpcodeHandler.h:328
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Handles the TKE_Text and TKE_Text_With_Encoding opcodes.
Definition: BOpcodeHandler.h:6524
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
int m_num_parts
number of handlers
Definition: HOpcodeHandler.h:1520
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Handles the TKE_Rendering_Options opcode.
Definition: BOpcodeHandler.h:2255
HTK_Linear_Pattern(unsigned char opcode)
Definition: HOpcodeHandler.h:597
Provides HOOPS/3dGS-specific handling of the TKE_Grid opcode.
Definition: HOpcodeHandler.h:1268
BBaseOpcodeHandler ** m_parts
Array of style def handlers.
Definition: HOpcodeHandler.h:1519
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:956
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:292
The BBaseOpcodeHandler abstract class is used as a base for derived classes which manage logical piec...
Definition: BOpcodeHandler.h:55
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Provides HOOPS/3dGS-specific handling of the TKE_Color_By_FIndex opcode.
Definition: HOpcodeHandler.h:353
TK_Status
Codes which can be either passed to various toolkit functions, or indicate the result of a toolkit fu...
Definition: BStream.h:257
Handles the TKE_Window opcode.
Definition: BOpcodeHandler.h:4844
Provides HOOPS/3dGS-specific handling of the TKE_Cylinder opcode.
Definition: HOpcodeHandler.h:1222
Handles the TKE_Visibility opcode.
Definition: BOpcodeHandler.h:4018
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:753
HTK_Ellipse(unsigned char opcode)
Definition: HOpcodeHandler.h:1179
Provides HOOPS/3dGS-specific handling of the TKE_Unicode_Options opcode.
Definition: HOpcodeHandler.h:729
Provides HOOPS/3dGS-specific handling of the TKE_Color_Map opcode.
Definition: HOpcodeHandler.h:399
Provides HOOPS/3dGS-specific handling of the TKE_Circle, TKE_Circular_Arc, TKE_Circular_Chord and TKE...
Definition: HOpcodeHandler.h:1153
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Provides HOOPS/3dGS-specific handling of the TKE_User_Index opcode.
Definition: HOpcodeHandler.h:749
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1027
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
HTK_Camera(unsigned char opcode=TKE_Camera)
Definition: HOpcodeHandler.h:812
HTK_Enumerated(unsigned char opcode)
Definition: HOpcodeHandler.h:567
Handles the TKE_NURBS_Surface opcode.
Definition: BOpcodeHandler.h:5542
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Provides HOOPS/3dGS-specific handling of the TKE_Complex_Clip_Region opcode.
Definition: HOpcodeHandler.h:877
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Handles the TKE_Color_By_Index and TKE_Color_By_Index_16 opcode.
Definition: BOpcodeHandler.h:2019
#define ID_Key
Definition: BStream.h:233
HTK_Color_RGB(int mask=0, float const *rgb=0)
Definition: HOpcodeHandler.h:282
void SetRoot(HC_KEY root)
Definition: HOpcodeHandler.h:123
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1272
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:336
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1436
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1160
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Handles the TKE_User_Options opcode.
Definition: BOpcodeHandler.h:4460
TK_Status Write(BStreamFileToolkit &tk)
Handles the TKE_Clip_Region opcodes.
Definition: BOpcodeHandler.h:7417
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:691
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1206
bool m_is_shader
search for shaders, not textures
Definition: HOpcodeHandler.h:1385
Definition: HOpcodeHandler.h:1562
Handles the TKE_Color_Map opcode.
Definition: BOpcodeHandler.h:2119
Provides HOOPS/3dGS-specific handling of the TKE_Marker_Symbol, TKE_Line_Pattern, and TKE_Edge_Patter...
Definition: HOpcodeHandler.h:610
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Definition: HOpcodeHandler.h:679
HTK_Matrix(unsigned char opcode)
Definition: HOpcodeHandler.h:549
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:859
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:530
Provides HOOPS/3dGS-specific handling of the TKE_Font opcode.
Definition: HOpcodeHandler.h:1313
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1137
HTK_Color_By_FIndex(int mask=0, float index=0.0f)
Definition: HOpcodeHandler.h:356
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1395
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1097
Handles the TKE_Conditional_Action opcode.
Definition: BOpcodeHandler.h:4410
Provides HOOPS/3dGS-specific handling of the TKE_Heuristics opcode.
Definition: HOpcodeHandler.h:463
Provides HOOPS/3dGS-specific handling of the TKE_Open_Segment opcode.
Definition: HOpcodeHandler.h:53
virtual TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Definition: BOpcodeHandler.h:217
Definition: BOpcodeHandler.h:4343
int m_num_parts
number of handlers
Definition: HOpcodeHandler.h:1467
void Reset()
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, int variant=0)
Definition: HOpcodeHandler.h:1456
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:1343
Handles the TKE_Delete_Object opcode.
Definition: BOpcodeHandler.h:1478
Provides HOOPS/3dGS-specific handling of the TKE_Repeat_Object opcode.
Definition: HOpcodeHandler.h:172
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:671
Handles the TKE_Spot_Light opcode.
Definition: BOpcodeHandler.h:5687
HC_KEY m_key
for internal use only
Definition: HOpcodeHandler.h:1365
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Provides HOOPS/3dGS-specific handling of the TKE_Conditions opcode.
Definition: HOpcodeHandler.h:645
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:381
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Handles the TKE_Line opcode.
Definition: BOpcodeHandler.h:5249
virtual TK_Status Execute(BStreamFileToolkit &tk)
Provides HOOPS/3dGS-specific handling of the TKE_Texture.
Definition: HOpcodeHandler.h:1361
Provides HOOPS/3dGS-specific handling of the TKE_Cutting_Plane opcode.
Definition: HOpcodeHandler.h:1133
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:584
HTK_Bounding(unsigned char opcode, float *min, float *max)
Definition: HOpcodeHandler.h:948
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
HTK_Named_Style_Def()
Definition: HOpcodeHandler.h:1500
Provides HOOPS/3dGS-specific handling of the TKE_User_Index_Data opcode.
Definition: HOpcodeHandler.h:769
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:733
Handles the TKE_Ellipse and TKE_Elliptical_Arc opcodes.
Definition: BOpcodeHandler.h:5964
Handles the TKE_Grid opcode.
Definition: BOpcodeHandler.h:6392
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
HTK_Color_By_Index(unsigned char opcode, int mask=0, int index=0)
Definition: HOpcodeHandler.h:331
Provides HOOPS/3dGS-specific handling of the TKE_Area_Light opcode.
Definition: HOpcodeHandler.h:1092
HTK_Text(unsigned char opcode)
Definition: HOpcodeHandler.h:1292
virtual TK_Status Write(BStreamFileToolkit &tk)=0
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
Handles the TKE_User_Value opcode.
Definition: BOpcodeHandler.h:4653
HTK_Bounding(unsigned char opcode, float *center, float radius)
Definition: HOpcodeHandler.h:951
Provides HOOPS/3dGS-specific handling of the TKE_Line, TKE_Infinite_Line, and TKE_Infinite_Ray opcode...
Definition: HOpcodeHandler.h:997
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:920
Handles the TKE_Color_By_FIndex opcode.
Definition: BOpcodeHandler.h:2068
Provides HOOPS/3dGS-specific handling of the TKE_Reference opcode.
Definition: HOpcodeHandler.h:140
HTK_Sphere()
Definition: HOpcodeHandler.h:1202
Provides HOOPS/3dGS-specific handling of the TKE_Marker, TKE_Text_Path TKE_Distant_Light, and TKE_Local_Light opcodes.
Definition: HOpcodeHandler.h:973
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
HTK_Reference()
Definition: HOpcodeHandler.h:147
TK_Status Interpret(BStreamFileToolkit &tk, ID_Key key, char const *special)
Definition: HOpcodeHandler.h:424
BBaseOpcodeHandler ** m_parts
Array of texture handlers.
Definition: HOpcodeHandler.h:1383
TK_Status Clone(BStreamFileToolkit &tk, BBaseOpcodeHandler **handler) const
HTK_Point(unsigned char opcode)
Definition: HOpcodeHandler.h:976