Panda3D
fltOpcode.h
1 // Filename: fltOpcode.h
2 // Created by: drose (24Aug00)
3 //
4 ////////////////////////////////////////////////////////////////////
5 //
6 // PANDA 3D SOFTWARE
7 // Copyright (c) Carnegie Mellon University. All rights reserved.
8 //
9 // All use of this software is subject to the terms of the revised BSD
10 // license. You should have received a copy of this license along
11 // with this source code in a file named "LICENSE."
12 //
13 ////////////////////////////////////////////////////////////////////
14 
15 #ifndef FLTOPCODE_H
16 #define FLTOPCODE_H
17 
18 #include "pandatoolbase.h"
19 
20 // Known opcodes, as of the latest version of flt.
21 enum FltOpcode {
22  FO_none = 0,
23  FO_header = 1,
24  FO_group = 2,
25  FO_OB_scale = 3, // obsolete
26  FO_object = 4,
27  FO_face = 5,
28  FO_OB_vertex_i = 6, // obsolete
29  FO_OB_short_vertex = 7, // obsolete
30  FO_OB_vertex_c = 8, // obsolete
31  FO_OB_vertex_cn = 9, // obsolete
32  FO_push = 10,
33  FO_pop = 11,
34  FO_OB_translate = 12, // obsolete
35  FO_OB_dof = 13, // obsolete
36  FO_dof = 14,
37  FO_OB_instance_ref = 16, // obsolete
38  FO_OB_instance = 17, // obsolete
39  FO_push_face = 19,
40  FO_pop_face = 20,
41  FO_push_extension = 21,
42  FO_pop_extension = 22,
43  FO_continuation = 23,
44 
45  FO_comment = 31,
46  FO_color_palette = 32,
47  FO_long_id = 33,
48  FO_OB_translate2 = 40, // obsolete
49  FO_OB_rotate_point = 41, // obsolete
50  FO_OB_rotate_edge = 42, // obsolete
51  FO_OB_scale2 = 43, // obsolete
52  FO_OB_translate3 = 44, // obsolete
53  FO_OB_nu_scale = 45, // obsolete
54  FO_OB_rotate_point2 = 46, // obsolete
55  FO_OB_rotate_to_point = 47, // obsolete
56  FO_OB_put = 48, // obsolete
57  FO_transform_matrix = 49,
58  FO_vector = 50,
59  FO_OB_bounding_box = 51, // obsolete
60  FO_multitexture = 52,
61  FO_uv_list = 53,
62  FO_bsp = 55,
63  FO_replicate = 60,
64  FO_instance_ref = 61,
65  FO_instance = 62,
66  FO_external_ref = 63,
67  FO_texture = 64,
68  FO_OB_eyepoint_palette = 65, // obsolete
69  FO_14_material_palette = 66,
70  FO_vertex_palette = 67,
71  FO_vertex_c = 68,
72  FO_vertex_cn = 69,
73  FO_vertex_cnu = 70,
74  FO_vertex_cu = 71,
75  FO_vertex_list = 72,
76  FO_lod = 73,
77  FO_bounding_box = 74,
78  FO_rotate_about_edge = 76,
79  FO_OB_scale3 = 77, // obsolete
80  FO_translate = 78,
81  FO_scale = 79,
82  FO_rotate_about_point = 80,
83  FO_rotate_and_scale = 81,
84  FO_put = 82,
85  FO_eyepoint_palette = 83,
86  FO_mesh = 84,
87  FO_local_vertex_pool = 85,
88  FO_mesh_primitive = 86,
89  FO_road_segment = 87,
90  FO_road_zone = 88,
91  FO_morph_list = 89,
92  FO_behavior_palette = 90,
93  FO_sound = 91,
94  FO_road_path = 92,
95  FO_sound_palette = 93,
96  FO_general_matrix = 94,
97  FO_text = 95,
98  FO_switch = 96,
99  FO_line_style = 97,
100  FO_clip_region = 98,
101  FO_extension = 100,
102  FO_light_source = 101,
103  FO_light_definition = 102,
104  FO_bounding_sphere = 105,
105  FO_bounding_cylinder = 106,
106  FO_bv_center = 108,
107  FO_bv_orientation = 109,
108  FO_light_point = 111,
109  FO_texture_map_palette = 112,
110  FO_15_material = 113,
111  FO_name_table = 114,
112  FO_cat = 115,
113  FO_cat_data = 116,
114  FO_push_attribute = 122,
115  FO_pop_attribute = 123,
116  FO_adaptive_attribute = 125,
117  FO_curve = 126,
118  FO_road_construction = 127
119 };
120 
121 ostream &operator << (ostream &out, FltOpcode opcode);
122 
123 #endif
124