aboutsummaryrefslogtreecommitdiffstats
path: root/src/javax/media/j3d/ShaderAttributeSet.java
diff options
context:
space:
mode:
authorJulien Gouesse <[email protected]>2015-11-28 15:11:48 +0100
committerJulien Gouesse <[email protected]>2015-11-28 15:11:48 +0100
commitdbc98deea1884e44da2c74d6ea807253cdefa693 (patch)
tree29c3ee7dea82d7dd773d81f33f645dde67e43a17 /src/javax/media/j3d/ShaderAttributeSet.java
parent2c99f1329dc55bd496bce91b9aba956ecba3c67e (diff)
Relocate package prefix to org.jogamp.java3d
Diffstat (limited to 'src/javax/media/j3d/ShaderAttributeSet.java')
-rw-r--r--src/javax/media/j3d/ShaderAttributeSet.java274
1 files changed, 0 insertions, 274 deletions
diff --git a/src/javax/media/j3d/ShaderAttributeSet.java b/src/javax/media/j3d/ShaderAttributeSet.java
deleted file mode 100644
index 2503626..0000000
--- a/src/javax/media/j3d/ShaderAttributeSet.java
+++ /dev/null
@@ -1,274 +0,0 @@
-/*
- * Copyright 2005-2008 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- *
- */
-
-package javax.media.j3d;
-
-
-/**
- * The ShaderAttributeSet object provides uniform attributes to shader
- * programs. Uniform attributes (variables) are those attributes whose
- * values are constant during the rendering of a primitive. Their
- * values may change from primitive to primitive, but are constant for
- * each vertex (for vertex shaders) or fragment (for fragment shaders)
- * of a single primitive. Examples of uniform attributes include a
- * transformation matrix, a texture map, lights, lookup tables, etc.
- * The ShaderAttributeSet object contains a set of ShaderAttribute
- * objects. Each ShaderAttribute object defines the value of a single
- * uniform shader variable. The set of attributes is unique with respect
- * to attribute names: no two attributes in the set will have the same
- * name.
- *
- * <p>
- * There are two ways in which values can be specified for uniform
- * attributes: explicitly, by providing a value; and implicitly, by
- * defining a binding between a Java 3D system attribute and a uniform
- * attribute. This functionality is provided by two subclasses of
- * ShaderAttribute: ShaderAttributeObject, which is used to specify
- * explicitly defined attributes; and ShaderAttributeBinding, which is
- * used to specify implicitly defined, automatically tracked attributes.
- *
- * <p>
- * Depending on the shading language (and profile) being used, several
- * Java 3D state attributes are automatically made available to the
- * shader program as pre-defined uniform attributes. The application
- * doesn't need to do anything to pass these attributes in to the
- * shader program. The implementation of each shader language (e.g.,
- * Cg, GLSL) defines its own bindings from Java 3D attribute to uniform
- * variable name. A list of these attributes for each shader language
- * can be found in the concrete subclass of ShaderProgram for that
- * shader language.
- *
- * @see ShaderAttribute
- * @see ShaderProgram
- * @see ShaderAppearance#setShaderAttributeSet
- *
- * @since Java 3D 1.4
- */
-
-public class ShaderAttributeSet extends NodeComponent {
-
- /**
- * Specifies that this ShaderAttributeSet object allows reading
- * its attributes.
- */
- public static final int
- ALLOW_ATTRIBUTES_READ =
- CapabilityBits.SHADER_ATTRIBUTE_SET_ALLOW_ATTRIBUTES_READ;
-
- /**
- * Specifies that this ShaderAttributeSet object allows writing
- * its attributes.
- */
- public static final int
- ALLOW_ATTRIBUTES_WRITE =
- CapabilityBits.SHADER_ATTRIBUTE_SET_ALLOW_ATTRIBUTES_WRITE;
-
- // Array for setting default read capabilities
- private static final int[] readCapabilities = {
- ALLOW_ATTRIBUTES_READ
- };
-
- /**
- * Constructs an empty ShaderAttributeSet object. The attributes set
- * is initially empty.
- */
- public ShaderAttributeSet() {
- // set default read capabilities
- setDefaultReadCapabilities(readCapabilities);
- }
-
- //
- // Methods for dealing with the (name, value) pairs for explicit
- // attributes
- //
-
- /**
- * Adds the specified shader attribute to the attributes set.
- * The newly specified attribute replaces an attribute with the
- * same name, if one already exists in the attributes set.
- *
- * @param attr the shader attribute to be added to the set
- *
- * @exception NullPointerException if attr is null
- *
- * @exception CapabilityNotSetException if appropriate capability is
- * not set and this object is part of live or compiled scene graph
- */
- public void put(ShaderAttribute attr) {
- if (attr == null) {
- throw new NullPointerException();
- }
-
- if (isLiveOrCompiled())
- if (!this.getCapability(ALLOW_ATTRIBUTES_WRITE))
- throw new CapabilityNotSetException(J3dI18N.getString("ShaderAttributeSet1"));
-
- ((ShaderAttributeSetRetained)this.retained).put(attr);
-
- }
-
- /**
- * Retrieves the shader attribute with the specified
- * <code>attrName</code> from the attributes set. If attrName does
- * not exist in the attributes set, null is returned.
- *
- * @param attrName the name of the shader attribute to be retrieved
- *
- * @exception NullPointerException if attrName is null
- *
- * @return a the shader attribute associated with the specified
- * attribute name, or null if the name is not in the attributes
- * set
- *
- * @exception CapabilityNotSetException if appropriate capability is
- * not set and this object is part of live or compiled scene graph
- */
- public ShaderAttribute get(String attrName) {
-
- if (attrName == null) {
- throw new NullPointerException();
- }
-
- if (isLiveOrCompiled())
- if (!this.getCapability(ALLOW_ATTRIBUTES_READ))
- throw new CapabilityNotSetException(J3dI18N.getString("ShaderAttributeSet0"));
-
- return ((ShaderAttributeSetRetained)this.retained).get(attrName);
- }
-
- /**
- * Removes the shader attribute with the specified
- * <code>attrName</code> from the attributes set. If attrName does
- * not exist in the attributes set then nothing happens.
- *
- * @param attrName the name of the shader attribute to be removed
- *
- * @exception NullPointerException if attrName is null
- *
- * @exception CapabilityNotSetException if appropriate capability is
- * not set and this object is part of live or compiled scene graph
- */
- public void remove(String attrName) {
- if (attrName == null) {
- throw new NullPointerException();
- }
-
- if (isLiveOrCompiled())
- if (!this.getCapability(ALLOW_ATTRIBUTES_WRITE))
- throw new CapabilityNotSetException(J3dI18N.getString("ShaderAttributeSet1"));
-
- ((ShaderAttributeSetRetained)this.retained).remove(attrName);
- }
-
- /**
- * Removes the specified shader attribute from the attributes
- * set. If the attribute does not exist in the attributes set then
- * nothing happens. Note that this method will <i>not</i> remove a
- * shader object other than the one specified, even if it has the
- * same name as the specified attribute. Applications that wish to
- * remove an attribute by name should use
- * <code>removeAttribute(String)</code>.
- *
- * @param attr the shader attribute to be removed
- *
- * @exception NullPointerException if attr is null
- *
- * @exception CapabilityNotSetException if appropriate capability is
- * not set and this object is part of live or compiled scene graph
- */
- public void remove(ShaderAttribute attr) {
- if (attr == null) {
- throw new NullPointerException();
- }
-
- if (isLiveOrCompiled())
- if (!this.getCapability(ALLOW_ATTRIBUTES_WRITE))
- throw new CapabilityNotSetException(J3dI18N.getString("ShaderAttributeSet1"));
-
- ((ShaderAttributeSetRetained)this.retained).remove(attr);
- }
-
- /**
- * Removes all shader attributes from the attributes set. The
- * attributes set will be empty following this call.
- *
- * @exception CapabilityNotSetException if appropriate capability is
- * not set and this object is part of live or compiled scene graph
- */
- public void clear() {
-
- if (isLiveOrCompiled())
- if (!this.getCapability(ALLOW_ATTRIBUTES_WRITE))
- throw new CapabilityNotSetException(J3dI18N.getString("ShaderAttributeSet1"));
-
- ((ShaderAttributeSetRetained)this.retained).clear();
- }
-
- /**
- * Returns a shallow copy of the attributes set.
- *
- * @return a shallow copy of the attributes set
- *
- * @exception CapabilityNotSetException if appropriate capability is
- * not set and this object is part of live or compiled scene graph
- */
- public ShaderAttribute[] getAll() {
-
- if (isLiveOrCompiled())
- if (!this.getCapability(ALLOW_ATTRIBUTES_READ))
- throw new CapabilityNotSetException(J3dI18N.getString("ShaderAttributeSet0"));
-
- return ((ShaderAttributeSetRetained)this.retained).getAll();
- }
-
- /**
- * Returns the number of elements in the attributes set.
- *
- * @return the number of elements in the attributes set
- *
- * @exception CapabilityNotSetException if appropriate capability is
- * not set and this object is part of live or compiled scene graph
- */
- public int size() {
-
- if (isLiveOrCompiled())
- if (!this.getCapability(ALLOW_ATTRIBUTES_READ))
- throw new CapabilityNotSetException(J3dI18N.getString("ShaderAttributeSet0"));
-
- return ((ShaderAttributeSetRetained)this.retained).size();
- }
-
- /**
- * Creates a retained mode ShaderAttributeSetRetained object that this
- * ShaderAttributeSet component object will point to.
- */
- @Override
- void createRetained() {
- // System.err.println("ShaderAttributeSet : createRetained() ...");
- this.retained = new ShaderAttributeSetRetained();
- this.retained.setSource(this);
- }
-}