1 /*
2  * $RCSfile: CapabilityBits.java,v $
3  *
4  * Copyright 1998-2008 Sun Microsystems, Inc.  All Rights Reserved.
5  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6  *
7  * This code is free software; you can redistribute it and/or modify it
8  * under the terms of the GNU General Public License version 2 only, as
9  * published by the Free Software Foundation.  Sun designates this
10  * particular file as subject to the "Classpath" exception as provided
11  * by Sun in the LICENSE file that accompanied this code.
12  *
13  * This code is distributed in the hope that it will be useful, but WITHOUT
14  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
15  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
16  * version 2 for more details (a copy is included in the LICENSE file that
17  * accompanied this code).
18  *
19  * You should have received a copy of the GNU General Public License version
20  * 2 along with this work; if not, write to the Free Software Foundation,
21  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
22  *
23  * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
24  * CA 95054 USA or visit www.sun.com if you need additional information or
25  * have any questions.
26  *
27  * $Revision: 1.6 $
28  * $Date: 2008/02/28 20:17:20 $
29  * $State: Exp $
30  */
31 
32 package javax.media.j3d;
33 
34 /**
35  * This CapabilityBits class provides a global namespace for all
36  * capability bits
37  */
38 class CapabilityBits extends Object {
39 
40     // SceneGraphObject
41 
42     // Node extends SceneGraphObject
43     static final int NODE_ENABLE_COLLISION_REPORTING			= 0;
44     static final int NODE_ENABLE_PICK_REPORTING				= 1;
45     private static final int NODE_UNUSED_BIT				= 2;
46     static final int NODE_ALLOW_BOUNDS_READ				= 3;
47     static final int NODE_ALLOW_BOUNDS_WRITE				= 4;
48     static final int NODE_ALLOW_PICKABLE_READ				= 5;
49     static final int NODE_ALLOW_PICKABLE_WRITE				= 6;
50     static final int NODE_ALLOW_COLLIDABLE_READ				= 7;
51     static final int NODE_ALLOW_COLLIDABLE_WRITE			= 8;
52     static final int NODE_ALLOW_AUTO_COMPUTE_BOUNDS_READ		= 9;
53     static final int NODE_ALLOW_AUTO_COMPUTE_BOUNDS_WRITE		= 10;
54     static final int NODE_ALLOW_LOCAL_TO_VWORLD_READ			= 11;
55 
56 
57     // Group extends Node
58     static final int GROUP_ALLOW_CHILDREN_READ				= 12;
59     static final int GROUP_ALLOW_CHILDREN_WRITE				= 13;
60     static final int GROUP_ALLOW_CHILDREN_EXTEND			= 14;
61     static final int GROUP_ALLOW_COLLISION_BOUNDS_READ			= 15;
62     static final int GROUP_ALLOW_COLLISION_BOUNDS_WRITE			= 16;
63 
64     // BranchGroup extends Group
65     static final int BRANCH_GROUP_ALLOW_DETACH				= 17;
66 
67     // SharedGroup extends Group
68     static final int SHARED_GROUP_ALLOW_LINK_READ			= 17;
69 
70     // TransformGroup extends Group
71     static final int TRANSFORM_GROUP_ALLOW_TRANSFORM_READ		= 17;
72     static final int TRANSFORM_GROUP_ALLOW_TRANSFORM_WRITE		= 18;
73 
74     // Switch extends Group
75     static final int SWITCH_ALLOW_SWITCH_READ				= 17;
76     static final int SWITCH_ALLOW_SWITCH_WRITE				= 18;
77 
78     // ViewSpecificGroup extends Group
79     static final int VIEW_SPECIFIC_GROUP_ALLOW_VIEW_READ		= 17;
80     static final int VIEW_SPECIFIC_GROUP_ALLOW_VIEW_WRITE		= 18;
81 
82     // OrderedGroup extends Group
83     static final int ORDERED_GROUP_ALLOW_CHILD_INDEX_ORDER_READ		= 17;
84     static final int ORDERED_GROUP_ALLOW_CHILD_INDEX_ORDER_WRITE	= 18;
85 
86 
87     // Leaf extends Node
88 
89     // Background extends Leaf
90     static final int BACKGROUND_ALLOW_APPLICATION_BOUNDS_READ		= 12;
91     static final int BACKGROUND_ALLOW_APPLICATION_BOUNDS_WRITE		= 13;
92     static final int BACKGROUND_ALLOW_IMAGE_READ			= 14;
93     static final int BACKGROUND_ALLOW_IMAGE_WRITE			= 15;
94     static final int BACKGROUND_ALLOW_COLOR_READ			= 16;
95     static final int BACKGROUND_ALLOW_COLOR_WRITE			= 17;
96     static final int BACKGROUND_ALLOW_GEOMETRY_READ			= 18;
97     static final int BACKGROUND_ALLOW_GEOMETRY_WRITE			= 19;
98     static final int BACKGROUND_ALLOW_IMAGE_SCALE_MODE_READ		= 20;
99     static final int BACKGROUND_ALLOW_IMAGE_SCALE_MODE_WRITE		= 21;
100 
101     // BoundingLeaf extends Leaf
102     static final int BOUNDING_LEAF_ALLOW_REGION_READ			= 12;
103     static final int BOUNDING_LEAF_ALLOW_REGION_WRITE			= 13;
104 
105     // Clip extends Leaf
106     static final int CLIP_ALLOW_APPLICATION_BOUNDS_READ			= 12;
107     static final int CLIP_ALLOW_APPLICATION_BOUNDS_WRITE		= 13;
108     static final int CLIP_ALLOW_BACK_DISTANCE_READ			= 14;
109     static final int CLIP_ALLOW_BACK_DISTANCE_WRITE			= 15;
110 
111     // Morph extends Leaf
112     static final int MORPH_ALLOW_GEOMETRY_ARRAY_READ			= 12;
113     static final int MORPH_ALLOW_GEOMETRY_ARRAY_WRITE			= 13;
114     static final int MORPH_ALLOW_APPEARANCE_READ			= 14;
115     static final int MORPH_ALLOW_APPEARANCE_WRITE			= 15;
116     static final int MORPH_ALLOW_WEIGHTS_READ				= 16;
117     static final int MORPH_ALLOW_WEIGHTS_WRITE				= 17;
118     static final int MORPH_ALLOW_COLLISION_BOUNDS_READ			= 18;
119     static final int MORPH_ALLOW_COLLISION_BOUNDS_WRITE			= 19;
120     static final int MORPH_ALLOW_APPEARANCE_OVERRIDE_READ		= 20;
121     static final int MORPH_ALLOW_APPEARANCE_OVERRIDE_WRITE		= 21;
122 
123     // Link extends Leaf
124     static final int LINK_ALLOW_SHARED_GROUP_READ			= 12;
125     static final int LINK_ALLOW_SHARED_GROUP_WRITE			= 13;
126 
127     // Shape3D extends Leaf
128     static final int SHAPE3D_ALLOW_GEOMETRY_READ			= 12;
129     static final int SHAPE3D_ALLOW_GEOMETRY_WRITE			= 13;
130     static final int SHAPE3D_ALLOW_APPEARANCE_READ			= 14;
131     static final int SHAPE3D_ALLOW_APPEARANCE_WRITE			= 15;
132     static final int SHAPE3D_ALLOW_COLLISION_BOUNDS_READ		= 16;
133     static final int SHAPE3D_ALLOW_COLLISION_BOUNDS_WRITE		= 17;
134     static final int SHAPE3D_ALLOW_APPEARANCE_OVERRIDE_READ		= 18;
135     static final int SHAPE3D_ALLOW_APPEARANCE_OVERRIDE_WRITE		= 19;
136 
137     // OrientedShape3D extends Shape3D
138     static final int ORIENTED_SHAPE3D_ALLOW_MODE_READ			= 20;
139     static final int ORIENTED_SHAPE3D_ALLOW_MODE_WRITE			= 21;
140     static final int ORIENTED_SHAPE3D_ALLOW_AXIS_READ			= 22;
141     static final int ORIENTED_SHAPE3D_ALLOW_AXIS_WRITE			= 23;
142     static final int ORIENTED_SHAPE3D_ALLOW_POINT_READ			= 24;
143     static final int ORIENTED_SHAPE3D_ALLOW_POINT_WRITE			= 25;
144     static final int ORIENTED_SHAPE3D_ALLOW_SCALE_READ			= 26;
145     static final int ORIENTED_SHAPE3D_ALLOW_SCALE_WRITE			= 27;
146 
147     // Soundscape extends Leaf
148     static final int SOUNDSCAPE_ALLOW_APPLICATION_BOUNDS_READ		= 12;
149     static final int SOUNDSCAPE_ALLOW_APPLICATION_BOUNDS_WRITE		= 13;
150     static final int SOUNDSCAPE_ALLOW_ATTRIBUTES_READ			= 14;
151     static final int SOUNDSCAPE_ALLOW_ATTRIBUTES_WRITE			= 15;
152 
153     // ViewPlatform extends Leaf
154     static final int VIEW_PLATFORM_ALLOW_POLICY_READ			= 12;
155     static final int VIEW_PLATFORM_ALLOW_POLICY_WRITE			= 13;
156 
157     // Fog extends Leaf
158     static final int FOG_ALLOW_INFLUENCING_BOUNDS_READ			= 12;
159     static final int FOG_ALLOW_INFLUENCING_BOUNDS_WRITE			= 13;
160     static final int FOG_ALLOW_COLOR_READ				= 14;
161     static final int FOG_ALLOW_COLOR_WRITE				= 15;
162 
163     // ExponentialFog extends Fog
164     static final int EXPONENTIAL_FOG_ALLOW_DENSITY_READ			= 16;
165     static final int EXPONENTIAL_FOG_ALLOW_DENSITY_WRITE		= 17;
166 
167     // LinearFog extends Fog
168     static final int LINEAR_FOG_ALLOW_DISTANCE_READ			= 16;
169     static final int LINEAR_FOG_ALLOW_DISTANCE_WRITE			= 17;
170 
171     // Additional Fog bits (must go after LinearFog bits)
172     static final int FOG_ALLOW_SCOPE_READ				= 18;
173     static final int FOG_ALLOW_SCOPE_WRITE				= 19;
174 
175     // Light extends Leaf
176     static final int LIGHT_ALLOW_STATE_READ				= 12;
177     static final int LIGHT_ALLOW_STATE_WRITE				= 13;
178     static final int LIGHT_ALLOW_COLOR_READ				= 14;
179     static final int LIGHT_ALLOW_COLOR_WRITE				= 15;
180     static final int LIGHT_ALLOW_INFLUENCING_BOUNDS_READ		= 16;
181     static final int LIGHT_ALLOW_INFLUENCING_BOUNDS_WRITE		= 17;
182 
183     // DirectionalLight extends Light
184     static final int DIRECTIONAL_LIGHT_ALLOW_DIRECTION_READ		= 18;
185     static final int DIRECTIONAL_LIGHT_ALLOW_DIRECTION_WRITE		= 19;
186 
187     // PointLight extends Light
188     static final int POINT_LIGHT_ALLOW_POSITION_READ			= 18;
189     static final int POINT_LIGHT_ALLOW_POSITION_WRITE			= 19;
190     static final int POINT_LIGHT_ALLOW_ATTENUATION_READ			= 20;
191     static final int POINT_LIGHT_ALLOW_ATTENUATION_WRITE		= 21;
192 
193     // SpotLight extends PointLight
194     static final int SPOT_LIGHT_ALLOW_SPREAD_ANGLE_WRITE		= 22;
195     static final int SPOT_LIGHT_ALLOW_SPREAD_ANGLE_READ			= 23;
196     static final int SPOT_LIGHT_ALLOW_CONCENTRATION_WRITE		= 24;
197     static final int SPOT_LIGHT_ALLOW_CONCENTRATION_READ		= 25;
198     static final int SPOT_LIGHT_ALLOW_DIRECTION_WRITE			= 26;
199     static final int SPOT_LIGHT_ALLOW_DIRECTION_READ			= 27;
200 
201     // Additional Light bits (must go after SpotLight bits)
202     static final int LIGHT_ALLOW_SCOPE_READ				= 28;
203     static final int LIGHT_ALLOW_SCOPE_WRITE				= 29;
204 
205     // Sound extends Leaf
206     static final int SOUND_ALLOW_SOUND_DATA_READ			= 12;
207     static final int SOUND_ALLOW_SOUND_DATA_WRITE			= 13;
208     static final int SOUND_ALLOW_INITIAL_GAIN_READ			= 14;
209     static final int SOUND_ALLOW_INITIAL_GAIN_WRITE			= 15;
210     static final int SOUND_ALLOW_LOOP_READ				= 16;
211     static final int SOUND_ALLOW_LOOP_WRITE				= 17;
212     static final int SOUND_ALLOW_RELEASE_READ				= 18;
213     static final int SOUND_ALLOW_RELEASE_WRITE				= 19;
214     static final int SOUND_ALLOW_CONT_PLAY_READ				= 20;
215     static final int SOUND_ALLOW_CONT_PLAY_WRITE			= 21;
216     static final int SOUND_ALLOW_ENABLE_READ				= 22;
217     static final int SOUND_ALLOW_ENABLE_WRITE				= 23;
218     static final int SOUND_ALLOW_SCHEDULING_BOUNDS_READ			= 24;
219     static final int SOUND_ALLOW_SCHEDULING_BOUNDS_WRITE		= 25;
220     static final int SOUND_ALLOW_PRIORITY_READ				= 26;
221     static final int SOUND_ALLOW_PRIORITY_WRITE				= 27;
222     static final int SOUND_ALLOW_DURATION_READ				= 28;
223     static final int SOUND_ALLOW_IS_READY_READ				= 29;
224     static final int SOUND_ALLOW_IS_PLAYING_READ			= 30;
225     static final int SOUND_ALLOW_CHANNELS_USED_READ			= 31;
226     static final int SOUND_ALLOW_MUTE_READ                              = 40;
227     static final int SOUND_ALLOW_MUTE_WRITE                             = 41;
228     static final int SOUND_ALLOW_PAUSE_READ                             = 42;
229     static final int SOUND_ALLOW_PAUSE_WRITE                            = 43;
230     static final int SOUND_ALLOW_RATE_SCALE_FACTOR_READ                 = 44;
231     static final int SOUND_ALLOW_RATE_SCALE_FACTOR_WRITE                = 45;
232 
233     // PointSound extends Sound
234     static final int POINT_SOUND_ALLOW_POSITION_READ			= 32;
235     static final int POINT_SOUND_ALLOW_POSITION_WRITE			= 33;
236     static final int POINT_SOUND_ALLOW_DISTANCE_GAIN_READ		= 34;
237     static final int POINT_SOUND_ALLOW_DISTANCE_GAIN_WRITE		= 35;
238 
239     // ConeSound extends PointSound
240     static final int CONE_SOUND_ALLOW_DIRECTION_READ			= 36;
241     static final int CONE_SOUND_ALLOW_DIRECTION_WRITE			= 37;
242     static final int CONE_SOUND_ALLOW_ANGULAR_ATTENUATION_READ		= 38;
243     static final int CONE_SOUND_ALLOW_ANGULAR_ATTENUATION_WRITE		= 39;
244 
245     // ModelClip extends Leaf
246     static final int MODEL_CLIP_ALLOW_INFLUENCING_BOUNDS_READ		= 12;
247     static final int MODEL_CLIP_ALLOW_INFLUENCING_BOUNDS_WRITE		= 13;
248     static final int MODEL_CLIP_ALLOW_PLANE_READ			= 14;
249     static final int MODEL_CLIP_ALLOW_PLANE_WRITE			= 15;
250     static final int MODEL_CLIP_ALLOW_ENABLE_READ			= 16;
251     static final int MODEL_CLIP_ALLOW_ENABLE_WRITE			= 17;
252     static final int MODEL_CLIP_ALLOW_SCOPE_READ			= 18;
253     static final int MODEL_CLIP_ALLOW_SCOPE_WRITE			= 19;
254 
255     // AlternateAppearance extends Leaf
256     static final int ALTERNATE_APPEARANCE_ALLOW_INFLUENCING_BOUNDS_READ	= 12;
257     static final int ALTERNATE_APPEARANCE_ALLOW_INFLUENCING_BOUNDS_WRITE = 13;
258     static final int ALTERNATE_APPEARANCE_ALLOW_APPEARANCE_READ		= 14;
259     static final int ALTERNATE_APPEARANCE_ALLOW_APPEARANCE_WRITE	= 15;
260     static final int ALTERNATE_APPEARANCE_ALLOW_SCOPE_READ		= 16;
261     static final int ALTERNATE_APPEARANCE_ALLOW_SCOPE_WRITE		= 17;
262 
263     // Additional Node bits (must go after all existing Node subclass bits)
264     static final int NODE_ALLOW_PARENT_READ			        = 46;
265     static final int NODE_ALLOW_LOCALE_READ			        = 47;
266 
267 
268     // NodeComponent extends SceneGraphObject
269 
270     // Appearance extends NodeComponent
271     static final int APPEARANCE_ALLOW_MATERIAL_READ			= 0;
272     static final int APPEARANCE_ALLOW_MATERIAL_WRITE			= 1;
273     static final int APPEARANCE_ALLOW_TEXTURE_READ			= 2;
274     static final int APPEARANCE_ALLOW_TEXTURE_WRITE			= 3;
275     static final int APPEARANCE_ALLOW_TEXGEN_READ			= 4;
276     static final int APPEARANCE_ALLOW_TEXGEN_WRITE			= 5;
277     static final int APPEARANCE_ALLOW_TEXTURE_ATTRIBUTES_READ		= 6;
278     static final int APPEARANCE_ALLOW_TEXTURE_ATTRIBUTES_WRITE		= 7;
279     static final int APPEARANCE_ALLOW_COLORING_ATTRIBUTES_READ		= 8;
280     static final int APPEARANCE_ALLOW_COLORING_ATTRIBUTES_WRITE		= 9;
281     static final int APPEARANCE_ALLOW_TRANSPARENCY_ATTRIBUTES_READ	= 10;
282     static final int APPEARANCE_ALLOW_TRANSPARENCY_ATTRIBUTES_WRITE	= 11;
283     static final int APPEARANCE_ALLOW_RENDERING_ATTRIBUTES_READ		= 12;
284     static final int APPEARANCE_ALLOW_RENDERING_ATTRIBUTES_WRITE	= 13;
285     static final int APPEARANCE_ALLOW_POLYGON_ATTRIBUTES_READ		= 14;
286     static final int APPEARANCE_ALLOW_POLYGON_ATTRIBUTES_WRITE		= 15;
287     static final int APPEARANCE_ALLOW_LINE_ATTRIBUTES_READ		= 16;
288     static final int APPEARANCE_ALLOW_LINE_ATTRIBUTES_WRITE		= 17;
289     static final int APPEARANCE_ALLOW_POINT_ATTRIBUTES_READ		= 18;
290     static final int APPEARANCE_ALLOW_POINT_ATTRIBUTES_WRITE		= 19;
291     static final int APPEARANCE_ALLOW_TEXTURE_UNIT_STATE_READ		= 20;
292     static final int APPEARANCE_ALLOW_TEXTURE_UNIT_STATE_WRITE		= 21;
293 
294     // ShaderAppearance extends Appearance
295     static final int SHADER_APPEARANCE_ALLOW_SHADER_PROGRAM_READ	= 22;
296     static final int SHADER_APPEARANCE_ALLOW_SHADER_PROGRAM_WRITE	= 23;
297     static final int SHADER_APPEARANCE_ALLOW_SHADER_ATTRIBUTE_SET_READ	= 24;
298     static final int SHADER_APPEARANCE_ALLOW_SHADER_ATTRIBUTE_SET_WRITE	= 25;
299 
300     // AuralAttributes extends NodeComponent
301     static final int AURAL_ATTRIBUTES_ALLOW_ATTRIBUTE_GAIN_READ		= 0;
302     static final int AURAL_ATTRIBUTES_ALLOW_ATTRIBUTE_GAIN_WRITE	= 1;
303     static final int AURAL_ATTRIBUTES_ALLOW_ROLLOFF_READ		= 2;
304     static final int AURAL_ATTRIBUTES_ALLOW_ROLLOFF_WRITE		= 3;
305     static final int AURAL_ATTRIBUTES_ALLOW_REFLECTION_COEFFICIENT_READ	= 4;
306     static final int AURAL_ATTRIBUTES_ALLOW_REFLECTION_COEFFICIENT_WRITE = 5;
307     static final int AURAL_ATTRIBUTES_ALLOW_REVERB_DELAY_READ		= 6;
308     static final int AURAL_ATTRIBUTES_ALLOW_REVERB_DELAY_WRITE		= 7;
309     static final int AURAL_ATTRIBUTES_ALLOW_REVERB_ORDER_READ		= 8;
310     static final int AURAL_ATTRIBUTES_ALLOW_REVERB_ORDER_WRITE		= 9;
311     static final int AURAL_ATTRIBUTES_ALLOW_DISTANCE_FILTER_READ	= 10;
312     static final int AURAL_ATTRIBUTES_ALLOW_DISTANCE_FILTER_WRITE	= 11;
313     static final int AURAL_ATTRIBUTES_ALLOW_FREQUENCY_SCALE_FACTOR_READ	= 12;
314     static final int AURAL_ATTRIBUTES_ALLOW_FREQUENCY_SCALE_FACTOR_WRITE = 13;
315     static final int AURAL_ATTRIBUTES_ALLOW_VELOCITY_SCALE_FACTOR_READ	= 14;
316     static final int AURAL_ATTRIBUTES_ALLOW_VELOCITY_SCALE_FACTOR_WRITE	= 15;
317     static final int AURAL_ATTRIBUTES_ALLOW_REFLECTION_DELAY_READ	= 16;
318     static final int AURAL_ATTRIBUTES_ALLOW_REFLECTION_DELAY_WRITE      = 17;
319     static final int AURAL_ATTRIBUTES_ALLOW_REVERB_COEFFICIENT_READ     = 18;
320     static final int AURAL_ATTRIBUTES_ALLOW_REVERB_COEFFICIENT_WRITE	= 19;
321     static final int AURAL_ATTRIBUTES_ALLOW_DECAY_TIME_READ             = 20;
322     static final int AURAL_ATTRIBUTES_ALLOW_DECAY_TIME_WRITE            = 21;
323     static final int AURAL_ATTRIBUTES_ALLOW_DECAY_FILTER_READ           = 22;
324     static final int AURAL_ATTRIBUTES_ALLOW_DECAY_FILTER_WRITE          = 23;
325     static final int AURAL_ATTRIBUTES_ALLOW_DIFFUSION_READ              = 24;
326     static final int AURAL_ATTRIBUTES_ALLOW_DIFFUSION_WRITE             = 25;
327     static final int AURAL_ATTRIBUTES_ALLOW_DENSITY_READ                = 26;
328     static final int AURAL_ATTRIBUTES_ALLOW_DENSITY_WRITE               = 27;
329 
330     // ColoringAttributes extends NodeComponent
331     static final int COLORING_ATTRIBUTES_ALLOW_COLOR_READ		= 0;
332     static final int COLORING_ATTRIBUTES_ALLOW_COLOR_WRITE		= 1;
333     static final int COLORING_ATTRIBUTES_ALLOW_SHADE_MODEL_READ		= 2;
334     static final int COLORING_ATTRIBUTES_ALLOW_SHADE_MODEL_WRITE	= 3;
335 
336     // DepthComponent extends NodeComponent
337     static final int DEPTH_COMPONENT_ALLOW_SIZE_READ			= 0;
338     static final int DEPTH_COMPONENT_ALLOW_DATA_READ			= 1;
339 
340     // ImageComponent extends NodeComponent
341     static final int IMAGE_COMPONENT_ALLOW_SIZE_READ			= 0;
342     static final int IMAGE_COMPONENT_ALLOW_FORMAT_READ			= 1;
343     static final int IMAGE_COMPONENT_ALLOW_IMAGE_READ			= 2;
344     static final int IMAGE_COMPONENT_ALLOW_IMAGE_WRITE			= 3;
345 
346     // LineAttributes extends NodeComponent
347     static final int LINE_ATTRIBUTES_ALLOW_WIDTH_READ			= 0;
348     static final int LINE_ATTRIBUTES_ALLOW_WIDTH_WRITE			= 1;
349     static final int LINE_ATTRIBUTES_ALLOW_PATTERN_READ			= 2;
350     static final int LINE_ATTRIBUTES_ALLOW_PATTERN_WRITE		= 3;
351     static final int LINE_ATTRIBUTES_ALLOW_ANTIALIASING_READ		= 4;
352     static final int LINE_ATTRIBUTES_ALLOW_ANTIALIASING_WRITE		= 5;
353 
354     // Material extends NodeComponent
355     static final int MATERIAL_ALLOW_COMPONENT_READ			= 0;
356     static final int MATERIAL_ALLOW_COMPONENT_WRITE			= 1;
357 
358     // MediaContainer extends NodeComponent
359     static final int MEDIA_CONTAINER_ALLOW_CACHE_READ			= 0;
360     static final int MEDIA_CONTAINER_ALLOW_CACHE_WRITE			= 1;
361     static final int MEDIA_CONTAINER_ALLOW_URL_READ			= 2;
362     static final int MEDIA_CONTAINER_ALLOW_URL_WRITE			= 3;
363 
364     // PointAttributes extends NodeComponent
365     static final int POINT_ATTRIBUTES_ALLOW_SIZE_READ			= 0;
366     static final int POINT_ATTRIBUTES_ALLOW_SIZE_WRITE			= 1;
367     static final int POINT_ATTRIBUTES_ALLOW_ANTIALIASING_READ		= 2;
368     static final int POINT_ATTRIBUTES_ALLOW_ANTIALIASING_WRITE		= 3;
369 
370     // PolygonAttributes extends NodeComponent
371     static final int POLYGON_ATTRIBUTES_ALLOW_CULL_FACE_READ		= 0;
372     static final int POLYGON_ATTRIBUTES_ALLOW_CULL_FACE_WRITE		= 1;
373     static final int POLYGON_ATTRIBUTES_ALLOW_MODE_READ			= 2;
374     static final int POLYGON_ATTRIBUTES_ALLOW_MODE_WRITE		= 3;
375     static final int POLYGON_ATTRIBUTES_ALLOW_OFFSET_READ		= 4;
376     static final int POLYGON_ATTRIBUTES_ALLOW_OFFSET_WRITE		= 5;
377     static final int POLYGON_ATTRIBUTES_ALLOW_NORMAL_FLIP_READ		= 6;
378     static final int POLYGON_ATTRIBUTES_ALLOW_NORMAL_FLIP_WRITE		= 7;
379 
380     // RenderingAttributes extends NodeComponent
381     static final int RENDERING_ATTRIBUTES_ALLOW_ALPHA_TEST_VALUE_READ	= 0;
382     static final int RENDERING_ATTRIBUTES_ALLOW_ALPHA_TEST_VALUE_WRITE	= 1;
383     static final int RENDERING_ATTRIBUTES_ALLOW_ALPHA_TEST_FUNCTION_READ = 2;
384     static final int RENDERING_ATTRIBUTES_ALLOW_ALPHA_TEST_FUNCTION_WRITE = 3;
385     static final int RENDERING_ATTRIBUTES_ALLOW_DEPTH_ENABLE_READ	= 4;
386     static final int RENDERING_ATTRIBUTES_ALLOW_VISIBLE_READ		= 5;
387     static final int RENDERING_ATTRIBUTES_ALLOW_VISIBLE_WRITE		= 6;
388     static final int RENDERING_ATTRIBUTES_ALLOW_RASTER_OP_READ		= 7;
389     static final int RENDERING_ATTRIBUTES_ALLOW_RASTER_OP_WRITE		= 8;
390     static final int
391 	RENDERING_ATTRIBUTES_ALLOW_IGNORE_VERTEX_COLORS_READ		= 9;
392     static final int
393 	RENDERING_ATTRIBUTES_ALLOW_IGNORE_VERTEX_COLORS_WRITE		= 10;
394     static final int RENDERING_ATTRIBUTES_ALLOW_DEPTH_ENABLE_WRITE	= 11;
395     static final int RENDERING_ATTRIBUTES_ALLOW_DEPTH_TEST_FUNCTION_READ = 12;
396     static final int RENDERING_ATTRIBUTES_ALLOW_DEPTH_TEST_FUNCTION_WRITE = 13;
397     static final int RENDERING_ATTRIBUTES_ALLOW_STENCIL_ATTRIBUTES_READ = 14;
398     static final int RENDERING_ATTRIBUTES_ALLOW_STENCIL_ATTRIBUTES_WRITE = 15;
399 
400     // TexCoordGeneration extends NodeComponent
401     static final int TEX_COORD_GENERATION_ALLOW_ENABLE_READ		= 0;
402     static final int TEX_COORD_GENERATION_ALLOW_ENABLE_WRITE		= 1;
403     static final int TEX_COORD_GENERATION_ALLOW_FORMAT_READ		= 2;
404     static final int TEX_COORD_GENERATION_ALLOW_MODE_READ		= 3;
405     static final int TEX_COORD_GENERATION_ALLOW_PLANE_READ		= 4;
406     static final int TEX_COORD_GENERATION_ALLOW_PLANE_WRITE		= 5;
407 
408     // Texture extends NodeComponent
409     static final int TEXTURE_ALLOW_ENABLE_READ				= 0;
410     static final int TEXTURE_ALLOW_ENABLE_WRITE				= 1;
411     static final int TEXTURE_ALLOW_BOUNDARY_MODE_READ			= 2;
412     static final int TEXTURE_ALLOW_FILTER_READ				= 3;
413     static final int TEXTURE_ALLOW_IMAGE_READ				= 4;
414     static final int TEXTURE_ALLOW_MIPMAP_MODE_READ			= 5;
415     static final int TEXTURE_ALLOW_BOUNDARY_COLOR_READ			= 6;
416     static final int TEXTURE_ALLOW_IMAGE_WRITE				= 7;
417     static final int TEXTURE_ALLOW_SIZE_READ				= 8;
418     static final int TEXTURE_ALLOW_FORMAT_READ				= 9;
419     static final int TEXTURE_ALLOW_LOD_RANGE_READ			= 10;
420     static final int TEXTURE_ALLOW_LOD_RANGE_WRITE			= 11;
421     static final int TEXTURE_ALLOW_ANISOTROPIC_FILTER_READ		= 12;
422     static final int TEXTURE_ALLOW_SHARPEN_TEXTURE_READ			= 13;
423     static final int TEXTURE_ALLOW_FILTER4_READ				= 14;
424 
425     // Texture2D extends Texture
426     static final int TEXTURE2D_ALLOW_DETAIL_TEXTURE_READ		= 15;
427 
428     // TextureAttributes extends NodeComponent
429     static final int TEXTURE_ATTRIBUTES_ALLOW_MODE_READ			= 0;
430     static final int TEXTURE_ATTRIBUTES_ALLOW_MODE_WRITE		= 1;
431     static final int TEXTURE_ATTRIBUTES_ALLOW_BLEND_COLOR_READ		= 2;
432     static final int TEXTURE_ATTRIBUTES_ALLOW_BLEND_COLOR_WRITE		= 3;
433     static final int TEXTURE_ATTRIBUTES_ALLOW_TRANSFORM_READ		= 4;
434     static final int TEXTURE_ATTRIBUTES_ALLOW_TRANSFORM_WRITE		= 5;
435     static final int TEXTURE_ATTRIBUTES_ALLOW_COLOR_TABLE_READ		= 6;
436     static final int TEXTURE_ATTRIBUTES_ALLOW_COLOR_TABLE_WRITE		= 7;
437     static final int TEXTURE_ATTRIBUTES_ALLOW_COMBINE_READ		= 8;
438     static final int TEXTURE_ATTRIBUTES_ALLOW_COMBINE_WRITE        	= 9;
439 
440     // TransparencyAttributes extends NodeComponent
441     static final int TRANSPARENCY_ATTRIBUTES_ALLOW_MODE_READ		= 0;
442     static final int TRANSPARENCY_ATTRIBUTES_ALLOW_MODE_WRITE		= 1;
443     static final int TRANSPARENCY_ATTRIBUTES_ALLOW_VALUE_READ		= 2;
444     static final int TRANSPARENCY_ATTRIBUTES_ALLOW_VALUE_WRITE		= 3;
445     static final int TRANSPARENCY_ATTRIBUTES_ALLOW_BLEND_FUNCTION_READ	= 4;
446     static final int TRANSPARENCY_ATTRIBUTES_ALLOW_BLEND_FUNCTION_WRITE	= 5;
447 
448     // TextureUnitState extends NodeComponent
449     static final int TEXTURE_UNIT_STATE_ALLOW_STATE_READ		= 0;
450     static final int TEXTURE_UNIT_STATE_ALLOW_STATE_WRITE		= 1;
451 
452     // ShaderProgram extends NodeComponent
453     static final int SHADER_PROGRAM_ALLOW_SHADERS_READ			= 0;
454     static final int SHADER_PROGRAM_ALLOW_NAMES_READ			= 1;
455 
456     // ShaderAttributeSet extends NodeComponent
457     static final int SHADER_ATTRIBUTE_SET_ALLOW_ATTRIBUTES_READ		= 0;
458     static final int SHADER_ATTRIBUTE_SET_ALLOW_ATTRIBUTES_WRITE	= 1;
459 
460     // ShaderAttribute extends NodeComponent
461 
462     // ShaderAttributeObject extends ShaderAttribute
463     static final int SHADER_ATTRIBUTE_OBJECT_ALLOW_VALUE_READ		= 0;
464     static final int SHADER_ATTRIBUTE_OBJECT_ALLOW_VALUE_WRITE		= 1;
465 
466     // Geometry extends NodeComponent
467     // NOTE: additional bits are below the subclasses
468 
469     // GeometryArray extends Geometry
470     static final int GEOMETRY_ARRAY_ALLOW_COORDINATE_READ		= 0;
471     static final int GEOMETRY_ARRAY_ALLOW_COORDINATE_WRITE		= 1;
472     static final int GEOMETRY_ARRAY_ALLOW_COLOR_READ			= 2;
473     static final int GEOMETRY_ARRAY_ALLOW_COLOR_WRITE			= 3;
474     static final int GEOMETRY_ARRAY_ALLOW_NORMAL_READ			= 4;
475     static final int GEOMETRY_ARRAY_ALLOW_NORMAL_WRITE			= 5;
476     static final int GEOMETRY_ARRAY_ALLOW_TEXCOORD_READ			= 6;
477     static final int GEOMETRY_ARRAY_ALLOW_TEXCOORD_WRITE		= 7;
478     static final int GEOMETRY_ARRAY_ALLOW_COUNT_READ			= 8;
479 
480     // IndexedGeometryArray extends GeometryArray
481     static final int INDEXED_GEOMETRY_ARRAY_ALLOW_COORDINATE_INDEX_READ	= 9;
482     static final int INDEXED_GEOMETRY_ARRAY_ALLOW_COORDINATE_INDEX_WRITE= 10;
483     static final int INDEXED_GEOMETRY_ARRAY_ALLOW_COLOR_INDEX_READ	= 11;
484     static final int INDEXED_GEOMETRY_ARRAY_ALLOW_COLOR_INDEX_WRITE	= 12;
485     static final int INDEXED_GEOMETRY_ARRAY_ALLOW_NORMAL_INDEX_READ	= 13;
486     static final int INDEXED_GEOMETRY_ARRAY_ALLOW_NORMAL_INDEX_WRITE	= 14;
487     static final int INDEXED_GEOMETRY_ARRAY_ALLOW_TEXCOORD_INDEX_READ	= 15;
488     static final int INDEXED_GEOMETRY_ARRAY_ALLOW_TEXCOORD_INDEX_WRITE	= 16;
489 
490     // Additional GeometryArray bits (must go after IndexedGeometryArray bits)
491     static final int GEOMETRY_ARRAY_ALLOW_FORMAT_READ			= 17;
492     static final int J3D_1_2_GEOMETRY_ARRAY_ALLOW_REF_DATA_READ		= 18;
493     static final int GEOMETRY_ARRAY_ALLOW_REF_DATA_WRITE		= 19;
494     static final int GEOMETRY_ARRAY_ALLOW_COUNT_WRITE			= 20;
495     static final int GEOMETRY_ARRAY_ALLOW_REF_DATA_READ			= 21;
496     static final int GEOMETRY_ARRAY_ALLOW_VERTEX_ATTR_READ		= 22;
497     static final int GEOMETRY_ARRAY_ALLOW_VERTEX_ATTR_WRITE		= 23;
498 
499     // Additional GeometryArray bits (must go after IndexedGeometryArray bits)
500     static final int INDEXED_GEOMETRY_ARRAY_ALLOW_VERTEX_ATTR_INDEX_READ = 24;
501     static final int INDEXED_GEOMETRY_ARRAY_ALLOW_VERTEX_ATTR_INDEX_WRITE = 25;
502 
503     // CompressedGeometry extends Geometry
504     static final int COMPRESSED_GEOMETRY_ALLOW_COUNT_READ		= 0;
505     static final int COMPRESSED_GEOMETRY_ALLOW_HEADER_READ		= 1;
506     static final int COMPRESSED_GEOMETRY_ALLOW_GEOMETRY_READ		= 2;
507     static final int COMPRESSED_GEOMETRY_ALLOW_REF_DATA_READ		= 3;
508 
509     // Raster extends Geometry
510     static final int RASTER_ALLOW_POSITION_READ				= 0;
511     static final int RASTER_ALLOW_POSITION_WRITE			= 1;
512     static final int RASTER_ALLOW_OFFSET_READ				= 2;
513     static final int RASTER_ALLOW_OFFSET_WRITE				= 3;
514     static final int RASTER_ALLOW_IMAGE_READ				= 4;
515     static final int RASTER_ALLOW_IMAGE_WRITE				= 5;
516     static final int RASTER_ALLOW_DEPTH_COMPONENT_READ			= 6;
517     static final int RASTER_ALLOW_DEPTH_COMPONENT_WRITE			= 7;
518     static final int RASTER_ALLOW_SIZE_READ				= 8;
519     static final int RASTER_ALLOW_SIZE_WRITE				= 9;
520     static final int RASTER_ALLOW_TYPE_READ				= 10;
521     static final int RASTER_ALLOW_CLIP_MODE_READ			= 11;
522     static final int RASTER_ALLOW_CLIP_MODE_WRITE			= 12;
523 
524     // Text3D extends Geometry
525     static final int TEXT3D_ALLOW_FONT3D_READ				= 0;
526     static final int TEXT3D_ALLOW_FONT3D_WRITE				= 1;
527     static final int TEXT3D_ALLOW_STRING_READ				= 2;
528     static final int TEXT3D_ALLOW_STRING_WRITE				= 3;
529     static final int TEXT3D_ALLOW_POSITION_READ				= 4;
530     static final int TEXT3D_ALLOW_POSITION_WRITE			= 5;
531     static final int TEXT3D_ALLOW_ALIGNMENT_READ			= 6;
532     static final int TEXT3D_ALLOW_ALIGNMENT_WRITE			= 7;
533     static final int TEXT3D_ALLOW_PATH_READ				= 8;
534     static final int TEXT3D_ALLOW_PATH_WRITE				= 9;
535     static final int TEXT3D_ALLOW_CHARACTER_SPACING_READ		= 10;
536     static final int TEXT3D_ALLOW_CHARACTER_SPACING_WRITE		= 11;
537     static final int TEXT3D_ALLOW_BOUNDING_BOX_READ			= 12;
538 
539     // Additional geometry bits (must go after GeometryArray bits)
540     // NOTE: ALLOW_INTERSECT was duplicated by the old value of
541     // ALLOW_REF_DATA_READ in Java 3D 1.2.
542     static final int GEOMETRY_ALLOW_INTERSECT			        = 18;
543 
544     // NOTE: any further additional Geometry bits must come after the
545     // last GeometryArray bit
546 }
547