Class ARBSeparateShaderObjects
- java.lang.Object
-
- org.lwjgl.opengl.ARBSeparateShaderObjects
-
public class ARBSeparateShaderObjects extends java.lang.Object
Native bindings to the ARB_separate_shader_objects extension.Conventional GLSL requires multiple shader stages (vertex, fragment, geometry, tessellation control, and tessellation evaluation) to be linked into a single monolithic program object to specify a GLSL shader for each stage.
While GLSL's monolithic approach has some advantages for optimizing shaders as a unit that span multiple stages, all existing GPU hardware supports the more flexible mix-and-match approach.
Shaders written for HLSL9, Cg, the prior OpenGL assembly program extensions, and game console favor a more flexible "mix-and-match" approach to specifying shaders independently for these different shader stages. Many developers build their shader content around the mix-and-match approach where they can use a single vertex shader with multiple fragment shaders (or vice versa).
This extension adopts a "mix-and-match" shader stage model for GLSL allowing multiple different GLSL program objects to be bound at once each to an individual rendering pipeline stage independently of other stage bindings. This allows program objects to contain only the shader stages that best suit the applications needs.
This extension introduces the program pipeline object that serves as a container for the program bound to any particular rendering stage. It can be bound, unbound, and rebound to simply save and restore the complete shader stage to program object bindings. Like framebuffer and vertex array objects, program pipeline objects are "container" objects that are not shared between contexts.
To bind a program object to a specific shader stage or set of stages,
UseProgramStages
is used. TheVERTEX_SHADER_BIT
,GEOMETRY_SHADER_BIT
,FRAGMENT_SHADER_BIT
,TESS_CONTROL_SHADER_BIT
, andTESS_EVALUATION_SHADER_BIT
tokens refer to the conventional vertex, geometry, fragment, tessellation control and tessellation evaluation stages respectively.ActiveShaderProgram
specifies the program that Uniform* commands will update.While
ActiveShaderProgram
allows the use of conventional Uniform* commands to update uniform variable values for separable program objects, this extension provides a preferrable interface in a set of ProgramUniform* commands that update the same uniform variables but take a parameter indicating the program object to be updated, rather than updating the currently active program object. These commands mirror those introduced in EXT_direct_state_access.While
ActiveShaderProgram
provides a selector for setting and querying uniform values of a program object, the glProgramUniform* commands provide a selector-free way to modify uniforms of a GLSL program object without an explicit bind. This selector-free model reduces API overhead and provides a cleaner interface for applications.Separate linking creates the possibility that certain output varyings of a shader may go unread by the subsequent shader inputting varyings. In this case, the output varyings are simply ignored. It is also possible input varyings from a shader may not be written as output varyings of a preceding shader. In this case, the unwritten input varying values are undefined.
This extension builds on the proof-of-concept provided by EXT_separate_shader_objects which demonstrated that separate shader objects can work for GLSL. EXT_separate_shader_objects was a response to repeated requests for this functionality from 3D developers.
This ARB version addresses several "loose ends" in the prior EXT extension. In particular, it allows user-defined varyings with explicitly defined locations or implicitly assigned locations.
This ARB extension extends the GLSL language's use of layout qualifiers to provide cross-stage interfacing.
Requires
OpenGL 2.0
orARB_shader_objects
. Promoted to core inOpenGL 4.1
.
-
-
Field Summary
Fields Modifier and Type Field and Description static int
GL_ACTIVE_PROGRAM
Accepted bytype
parameter to GetProgramPipelineiv.static int
GL_ALL_SHADER_BITS
GL_FRAGMENT_SHADER_BIT
GL_GEOMETRY_SHADER_BITAccepted bystages
parameter to UseProgramStages.static int
GL_PROGRAM_PIPELINE_BINDING
Accepted by thepname
parameter of GetBooleanv, GetIntegerv, GetInteger64v, GetFloatv, and GetDoublev.static int
GL_PROGRAM_SEPARABLE
Accepted by thepname
parameter of ProgramParameteri and GetProgramiv.static int
GL_TESS_CONTROL_SHADER_BIT
GL_TESS_EVALUATION_SHADER_BIT
GL_VERTEX_SHADER_BITAccepted bystages
parameter to UseProgramStages.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static void
glActiveShaderProgram(int pipeline, int program)
Sets the active program object for a program pipeline object.static void
glBindProgramPipeline(int pipeline)
Binds a program pipeline to the current context.static int
glCreateShaderProgramv(int type, java.lang.CharSequence... strings)
Creates a stand-alone program from an array of null-terminated source code strings.static int
glCreateShaderProgramv(int type, java.lang.CharSequence string)
Creates a stand-alone program from an array of null-terminated source code strings.static int
glCreateShaderProgramv(int type, PointerBuffer strings)
Creates a stand-alone program from an array of null-terminated source code strings.static void
glDeleteProgramPipelines(int pipeline)
Deletes program pipeline objects.static void
glDeleteProgramPipelines(int[] pipelines)
Array version of:DeleteProgramPipelines
static void
glDeleteProgramPipelines(java.nio.IntBuffer pipelines)
Deletes program pipeline objects.static int
glGenProgramPipelines()
Reserves program pipeline object names.static void
glGenProgramPipelines(int[] pipelines)
Array version of:GenProgramPipelines
static void
glGenProgramPipelines(java.nio.IntBuffer pipelines)
Reserves program pipeline object names.static int
glGetProgramPipelinei(int pipeline, int pname)
Retrieves properties of a program pipeline object.static java.lang.String
glGetProgramPipelineInfoLog(int pipeline)
Retrieves the info log string from a program pipeline object.static java.lang.String
glGetProgramPipelineInfoLog(int pipeline, int bufSize)
Retrieves the info log string from a program pipeline object.static void
glGetProgramPipelineInfoLog(int pipeline, int[] length, java.nio.ByteBuffer infoLog)
Array version of:GetProgramPipelineInfoLog
static void
glGetProgramPipelineInfoLog(int pipeline, java.nio.IntBuffer length, java.nio.ByteBuffer infoLog)
Retrieves the info log string from a program pipeline object.static void
glGetProgramPipelineiv(int pipeline, int pname, int[] params)
Array version of:GetProgramPipelineiv
static void
glGetProgramPipelineiv(int pipeline, int pname, java.nio.IntBuffer params)
Retrieves properties of a program pipeline object.static boolean
glIsProgramPipeline(int pipeline)
Determines if a name corresponds to a program pipeline object.static void
glProgramParameteri(int program, int pname, int value)
Specifies the integer value of a program object parameter.static void
glProgramUniform1d(int program, int location, double x)
Specifies the value of a double uniform variable for a specified program object.static void
glProgramUniform1dv(int program, int location, double[] value)
Array version of:ProgramUniform1dv
static void
glProgramUniform1dv(int program, int location, java.nio.DoubleBuffer value)
Specifies the value of a single double uniform variable or a double uniform variable array for a specified program object.static void
glProgramUniform1f(int program, int location, float x)
Specifies the value of a float uniform variable for a specified program object.static void
glProgramUniform1fv(int program, int location, float[] value)
Array version of:ProgramUniform1fv
static void
glProgramUniform1fv(int program, int location, java.nio.FloatBuffer value)
Specifies the value of a single float uniform variable or a float uniform variable array for a specified program object.static void
glProgramUniform1i(int program, int location, int x)
Specifies the value of an int uniform variable for a specified program object.static void
glProgramUniform1iv(int program, int location, int[] value)
Array version of:ProgramUniform1iv
static void
glProgramUniform1iv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single float uniform variable or a float uniform variable array for a specified program object.static void
glProgramUniform1ui(int program, int location, int x)
Specifies the value of a uint uniform variable for a specified program object.static void
glProgramUniform1uiv(int program, int location, int[] value)
Array version of:ProgramUniform1uiv
static void
glProgramUniform1uiv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single uint uniform variable or a uint uniform variable array for a specified program object.static void
glProgramUniform2d(int program, int location, double x, double y)
Specifies the value of a dvec2 uniform variable for a specified program object.static void
glProgramUniform2dv(int program, int location, double[] value)
Array version of:ProgramUniform2dv
static void
glProgramUniform2dv(int program, int location, java.nio.DoubleBuffer value)
Specifies the value of a single dvec2 uniform variable or a dvec2 uniform variable array for a specified program object.static void
glProgramUniform2f(int program, int location, float x, float y)
Specifies the value of a vec2 uniform variable for a specified program object.static void
glProgramUniform2fv(int program, int location, float[] value)
Array version of:ProgramUniform2fv
static void
glProgramUniform2fv(int program, int location, java.nio.FloatBuffer value)
Specifies the value of a single vec2 uniform variable or a vec2 uniform variable array for a specified program object.static void
glProgramUniform2i(int program, int location, int x, int y)
Specifies the value of an ivec2 uniform variable for a specified program object.static void
glProgramUniform2iv(int program, int location, int[] value)
Array version of:ProgramUniform2iv
static void
glProgramUniform2iv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single ivec2 uniform variable or an ivec2 uniform variable array for a specified program object.static void
glProgramUniform2ui(int program, int location, int x, int y)
Specifies the value of a uvec2 uniform variable for a specified program object.static void
glProgramUniform2uiv(int program, int location, int[] value)
Array version of:ProgramUniform2uiv
static void
glProgramUniform2uiv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single uvec2 uniform variable or a uvec2 uniform variable array for a specified program object.static void
glProgramUniform3d(int program, int location, double x, double y, double z)
Specifies the value of a dvec3 uniform variable for a specified program object.static void
glProgramUniform3dv(int program, int location, double[] value)
Array version of:ProgramUniform3dv
static void
glProgramUniform3dv(int program, int location, java.nio.DoubleBuffer value)
Specifies the value of a single dvec3 uniform variable or a dvec3 uniform variable array for a specified program object.static void
glProgramUniform3f(int program, int location, float x, float y, float z)
Specifies the value of a vec3 uniform variable for a specified program object.static void
glProgramUniform3fv(int program, int location, float[] value)
Array version of:ProgramUniform3fv
static void
glProgramUniform3fv(int program, int location, java.nio.FloatBuffer value)
Specifies the value of a single vec3 uniform variable or a vec3 uniform variable array for a specified program object.static void
glProgramUniform3i(int program, int location, int x, int y, int z)
Specifies the value of an ivec3 uniform variable for a specified program object.static void
glProgramUniform3iv(int program, int location, int[] value)
Array version of:ProgramUniform3iv
static void
glProgramUniform3iv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single ivec3 uniform variable or an ivec3 uniform variable array for a specified program object.static void
glProgramUniform3ui(int program, int location, int x, int y, int z)
Specifies the value of a uvec3 uniform variable for a specified program object.static void
glProgramUniform3uiv(int program, int location, int[] value)
Array version of:ProgramUniform3uiv
static void
glProgramUniform3uiv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single uvec3 uniform variable or a uvec3 uniform variable array for a specified program object.static void
glProgramUniform4d(int program, int location, double x, double y, double z, double w)
Specifies the value of a dvec4 uniform variable for a specified program object.static void
glProgramUniform4dv(int program, int location, double[] value)
Array version of:ProgramUniform4dv
static void
glProgramUniform4dv(int program, int location, java.nio.DoubleBuffer value)
Specifies the value of a single dvec4 uniform variable or a dvec4 uniform variable array for a specified program object.static void
glProgramUniform4f(int program, int location, float x, float y, float z, float w)
Specifies the value of a vec4 uniform variable for a specified program object.static void
glProgramUniform4fv(int program, int location, float[] value)
Array version of:ProgramUniform4fv
static void
glProgramUniform4fv(int program, int location, java.nio.FloatBuffer value)
Specifies the value of a single vec4 uniform variable or a vec4 uniform variable array for a specified program object.static void
glProgramUniform4i(int program, int location, int x, int y, int z, int w)
Specifies the value of an ivec4 uniform variable for a specified program object.static void
glProgramUniform4iv(int program, int location, int[] value)
Array version of:ProgramUniform4iv
static void
glProgramUniform4iv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single ivec4 uniform variable or an ivec4 uniform variable array for a specified program object.static void
glProgramUniform4ui(int program, int location, int x, int y, int z, int w)
Specifies the value of a uvec4 uniform variable for a specified program object.static void
glProgramUniform4uiv(int program, int location, int[] value)
Array version of:ProgramUniform4uiv
static void
glProgramUniform4uiv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single uvec4 uniform variable or a uvec4 uniform variable array for a specified program object.static void
glProgramUniformMatrix2dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix2dv
static void
glProgramUniformMatrix2dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat2 uniform variable or a dmat2 uniform variable array for the current program object.static void
glProgramUniformMatrix2fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix2fv
static void
glProgramUniformMatrix2fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat2 uniform variable or a mat2 uniform variable array for the current program object.static void
glProgramUniformMatrix2x3dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix2x3dv
static void
glProgramUniformMatrix2x3dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat2x3 uniform variable or a dmat2x3 uniform variable array for the current program object.static void
glProgramUniformMatrix2x3fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix2x3fv
static void
glProgramUniformMatrix2x3fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat2x3 uniform variable or a mat2x3 uniform variable array for the current program object.static void
glProgramUniformMatrix2x4dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix2x4dv
static void
glProgramUniformMatrix2x4dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat2x4 uniform variable or a dmat2x4 uniform variable array for the current program object.static void
glProgramUniformMatrix2x4fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix2x4fv
static void
glProgramUniformMatrix2x4fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat2x4 uniform variable or a mat2x4 uniform variable array for the current program object.static void
glProgramUniformMatrix3dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix3dv
static void
glProgramUniformMatrix3dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat3 uniform variable or a dmat3 uniform variable array for the current program object.static void
glProgramUniformMatrix3fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix3fv
static void
glProgramUniformMatrix3fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat3 uniform variable or a mat3 uniform variable array for the current program object.static void
glProgramUniformMatrix3x2dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix3x2dv
static void
glProgramUniformMatrix3x2dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat3x2 uniform variable or a dmat3x2 uniform variable array for the current program object.static void
glProgramUniformMatrix3x2fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix3x2fv
static void
glProgramUniformMatrix3x2fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat3x2 uniform variable or a mat3x2 uniform variable array for the current program object.static void
glProgramUniformMatrix3x4dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix3x4dv
static void
glProgramUniformMatrix3x4dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat3x4 uniform variable or a dmat3x4 uniform variable array for the current program object.static void
glProgramUniformMatrix3x4fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix3x4fv
static void
glProgramUniformMatrix3x4fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat3x4 uniform variable or a mat3x4 uniform variable array for the current program object.static void
glProgramUniformMatrix4dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix4dv
static void
glProgramUniformMatrix4dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat4 uniform variable or a dmat4 uniform variable array for the current program object.static void
glProgramUniformMatrix4fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix4fv
static void
glProgramUniformMatrix4fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat4 uniform variable or a mat4 uniform variable array for the current program object.static void
glProgramUniformMatrix4x2dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix4x2dv
static void
glProgramUniformMatrix4x2dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat4x2 uniform variable or a dmat4x2 uniform variable array for the current program object.static void
glProgramUniformMatrix4x2fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix4x2fv
static void
glProgramUniformMatrix4x2fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat4x2 uniform variable or a mat4x2 uniform variable array for the current program object.static void
glProgramUniformMatrix4x3dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix4x3dv
static void
glProgramUniformMatrix4x3dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat4x3 uniform variable or a dmat4x3 uniform variable array for the current program object.static void
glProgramUniformMatrix4x3fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix4x3fv
static void
glProgramUniformMatrix4x3fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat4x3 uniform variable or a mat4x3 uniform variable array for the current program object.static void
glUseProgramStages(int pipeline, int stages, int program)
Binds stages of a program object to a program pipeline.static void
glValidateProgramPipeline(int pipeline)
Validates a program pipeline object against current GL state.
-
-
-
Field Detail
-
GL_VERTEX_SHADER_BIT
public static final int GL_VERTEX_SHADER_BIT
Accepted bystages
parameter to UseProgramStages.- See Also:
- Constant Field Values
-
GL_FRAGMENT_SHADER_BIT
public static final int GL_FRAGMENT_SHADER_BIT
Accepted bystages
parameter to UseProgramStages.- See Also:
- Constant Field Values
-
GL_GEOMETRY_SHADER_BIT
public static final int GL_GEOMETRY_SHADER_BIT
Accepted bystages
parameter to UseProgramStages.- See Also:
- Constant Field Values
-
GL_TESS_CONTROL_SHADER_BIT
public static final int GL_TESS_CONTROL_SHADER_BIT
Accepted bystages
parameter to UseProgramStages.- See Also:
- Constant Field Values
-
GL_TESS_EVALUATION_SHADER_BIT
public static final int GL_TESS_EVALUATION_SHADER_BIT
Accepted bystages
parameter to UseProgramStages.- See Also:
- Constant Field Values
-
GL_ALL_SHADER_BITS
public static final int GL_ALL_SHADER_BITS
Accepted bystages
parameter to UseProgramStages.- See Also:
- Constant Field Values
-
GL_PROGRAM_SEPARABLE
public static final int GL_PROGRAM_SEPARABLE
Accepted by thepname
parameter of ProgramParameteri and GetProgramiv.- See Also:
- Constant Field Values
-
GL_ACTIVE_PROGRAM
public static final int GL_ACTIVE_PROGRAM
Accepted bytype
parameter to GetProgramPipelineiv.- See Also:
- Constant Field Values
-
GL_PROGRAM_PIPELINE_BINDING
public static final int GL_PROGRAM_PIPELINE_BINDING
Accepted by thepname
parameter of GetBooleanv, GetIntegerv, GetInteger64v, GetFloatv, and GetDoublev.- See Also:
- Constant Field Values
-
-
Method Detail
-
glUseProgramStages
public static void glUseProgramStages(int pipeline, int stages, int program)
Binds stages of a program object to a program pipeline.- Parameters:
pipeline
- the program pipeline object to which to bind stages fromprogram
stages
- a set of program stages to bind to the program pipeline objectprogram
- the program object containing the shader executables to use inpipeline
-
glActiveShaderProgram
public static void glActiveShaderProgram(int pipeline, int program)
Sets the active program object for a program pipeline object.- Parameters:
pipeline
- the program pipeline object to set the active program object forprogram
- the program object to set as the active program pipeline objectpipeline
-
glCreateShaderProgramv
public static int glCreateShaderProgramv(int type, PointerBuffer strings)
Creates a stand-alone program from an array of null-terminated source code strings.glCreateShaderProgram
is equivalent (assuming no errors are generated) to:const GLuint shader = glCreateShader(type); if (shader) { glShaderSource(shader, count, strings, NULL); glCompileShader(shader); const GLuint program = glCreateProgram(); if (program) { GLint compiled = GL_FALSE; glGetShaderiv(shader, GL_COMPILE_STATUS, &compiled); glProgramParameteri(program, GL_PROGRAM_SEPARABLE, GL_TRUE); if (compiled) { glAttachShader(program, shader); glLinkProgram(program); glDetachShader(program, shader); } // append-shader-info-log-to-program-info-log } glDeleteShader(shader); return program; } else { return 0; }
The program object created by glCreateShaderProgram has its GL_PROGRAM_SEPARABLE status set to GL_TRUE.
- Parameters:
type
- the type of shader to createstrings
- an array of pointers to source code strings from which to create the program object
-
glCreateShaderProgramv
public static int glCreateShaderProgramv(int type, java.lang.CharSequence... strings)
Creates a stand-alone program from an array of null-terminated source code strings.glCreateShaderProgram
is equivalent (assuming no errors are generated) to:const GLuint shader = glCreateShader(type); if (shader) { glShaderSource(shader, count, strings, NULL); glCompileShader(shader); const GLuint program = glCreateProgram(); if (program) { GLint compiled = GL_FALSE; glGetShaderiv(shader, GL_COMPILE_STATUS, &compiled); glProgramParameteri(program, GL_PROGRAM_SEPARABLE, GL_TRUE); if (compiled) { glAttachShader(program, shader); glLinkProgram(program); glDetachShader(program, shader); } // append-shader-info-log-to-program-info-log } glDeleteShader(shader); return program; } else { return 0; }
The program object created by glCreateShaderProgram has its GL_PROGRAM_SEPARABLE status set to GL_TRUE.
- Parameters:
type
- the type of shader to createstrings
- an array of pointers to source code strings from which to create the program object
-
glCreateShaderProgramv
public static int glCreateShaderProgramv(int type, java.lang.CharSequence string)
Creates a stand-alone program from an array of null-terminated source code strings.glCreateShaderProgram
is equivalent (assuming no errors are generated) to:const GLuint shader = glCreateShader(type); if (shader) { glShaderSource(shader, count, strings, NULL); glCompileShader(shader); const GLuint program = glCreateProgram(); if (program) { GLint compiled = GL_FALSE; glGetShaderiv(shader, GL_COMPILE_STATUS, &compiled); glProgramParameteri(program, GL_PROGRAM_SEPARABLE, GL_TRUE); if (compiled) { glAttachShader(program, shader); glLinkProgram(program); glDetachShader(program, shader); } // append-shader-info-log-to-program-info-log } glDeleteShader(shader); return program; } else { return 0; }
The program object created by glCreateShaderProgram has its GL_PROGRAM_SEPARABLE status set to GL_TRUE.
- Parameters:
type
- the type of shader to create
-
glBindProgramPipeline
public static void glBindProgramPipeline(int pipeline)
Binds a program pipeline to the current context.- Parameters:
pipeline
- the name of the pipeline object to bind to the context
-
glDeleteProgramPipelines
public static void glDeleteProgramPipelines(java.nio.IntBuffer pipelines)
Deletes program pipeline objects.- Parameters:
pipelines
- an array of names of program pipeline objects to delete
-
glDeleteProgramPipelines
public static void glDeleteProgramPipelines(int pipeline)
Deletes program pipeline objects.
-
glGenProgramPipelines
public static void glGenProgramPipelines(java.nio.IntBuffer pipelines)
Reserves program pipeline object names.- Parameters:
pipelines
- an array of into which the reserved names will be written
-
glGenProgramPipelines
public static int glGenProgramPipelines()
Reserves program pipeline object names.
-
glIsProgramPipeline
public static boolean glIsProgramPipeline(int pipeline)
Determines if a name corresponds to a program pipeline object.- Parameters:
pipeline
- a value that may be the name of a program pipeline object
-
glProgramParameteri
public static void glProgramParameteri(int program, int pname, int value)
Specifies the integer value of a program object parameter.- Parameters:
program
- the name of a program object whose parameter to modifypname
- the name of the parameter to modify. One of:PROGRAM_BINARY_RETRIEVABLE_HINT
PROGRAM_SEPARABLE
value
- the new value of the parameter specified bypname
forprogram
-
glGetProgramPipelineiv
public static void glGetProgramPipelineiv(int pipeline, int pname, java.nio.IntBuffer params)
Retrieves properties of a program pipeline object.- Parameters:
pipeline
- the name of a program pipeline object whose parameter retrievepname
- the name of the parameter to retrieve. One of:ACTIVE_PROGRAM
INFO_LOG_LENGTH
VERTEX_SHADER
FRAGMENT_SHADER
GEOMETRY_SHADER
TESS_CONTROL_SHADER
TESS_EVALUATION_SHADER
params
- a variable into which will be written the value or values ofpname
forpipeline
-
glGetProgramPipelinei
public static int glGetProgramPipelinei(int pipeline, int pname)
Retrieves properties of a program pipeline object.- Parameters:
pipeline
- the name of a program pipeline object whose parameter retrievepname
- the name of the parameter to retrieve. One of:ACTIVE_PROGRAM
INFO_LOG_LENGTH
VERTEX_SHADER
FRAGMENT_SHADER
GEOMETRY_SHADER
TESS_CONTROL_SHADER
TESS_EVALUATION_SHADER
-
glProgramUniform1i
public static void glProgramUniform1i(int program, int location, int x)
Specifies the value of an int uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x value
-
glProgramUniform2i
public static void glProgramUniform2i(int program, int location, int x, int y)
Specifies the value of an ivec2 uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x valuey
- the uniform y value
-
glProgramUniform3i
public static void glProgramUniform3i(int program, int location, int x, int y, int z)
Specifies the value of an ivec3 uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x valuey
- the uniform y valuez
- the uniform z value
-
glProgramUniform4i
public static void glProgramUniform4i(int program, int location, int x, int y, int z, int w)
Specifies the value of an ivec4 uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x valuey
- the uniform y valuez
- the uniform z valuew
- the uniform w value
-
glProgramUniform1ui
public static void glProgramUniform1ui(int program, int location, int x)
Specifies the value of a uint uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x value
-
glProgramUniform2ui
public static void glProgramUniform2ui(int program, int location, int x, int y)
Specifies the value of a uvec2 uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x valuey
- the uniform y value
-
glProgramUniform3ui
public static void glProgramUniform3ui(int program, int location, int x, int y, int z)
Specifies the value of a uvec3 uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x valuey
- the uniform y valuez
- the uniform z value
-
glProgramUniform4ui
public static void glProgramUniform4ui(int program, int location, int x, int y, int z, int w)
Specifies the value of a uvec4 uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x valuey
- the uniform y valuez
- the uniform z valuew
- the uniform w value
-
glProgramUniform1f
public static void glProgramUniform1f(int program, int location, float x)
Specifies the value of a float uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x value
-
glProgramUniform2f
public static void glProgramUniform2f(int program, int location, float x, float y)
Specifies the value of a vec2 uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x valuey
- the uniform y value
-
glProgramUniform3f
public static void glProgramUniform3f(int program, int location, float x, float y, float z)
Specifies the value of a vec3 uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x valuey
- the uniform y valuez
- the uniform z value
-
glProgramUniform4f
public static void glProgramUniform4f(int program, int location, float x, float y, float z, float w)
Specifies the value of a vec4 uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x valuey
- the uniform y valuez
- the uniform z valuew
- the uniform w value
-
glProgramUniform1d
public static void glProgramUniform1d(int program, int location, double x)
Specifies the value of a double uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x value
-
glProgramUniform2d
public static void glProgramUniform2d(int program, int location, double x, double y)
Specifies the value of a dvec2 uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x valuey
- the uniform y value
-
glProgramUniform3d
public static void glProgramUniform3d(int program, int location, double x, double y, double z)
Specifies the value of a dvec3 uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x valuey
- the uniform y valuez
- the uniform z value
-
glProgramUniform4d
public static void glProgramUniform4d(int program, int location, double x, double y, double z, double w)
Specifies the value of a dvec4 uniform variable for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedx
- the uniform x valuey
- the uniform y valuez
- the uniform z valuew
- the uniform w value
-
glProgramUniform1iv
public static void glProgramUniform1iv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single float uniform variable or a float uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniform2iv
public static void glProgramUniform2iv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single ivec2 uniform variable or an ivec2 uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniform3iv
public static void glProgramUniform3iv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single ivec3 uniform variable or an ivec3 uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniform4iv
public static void glProgramUniform4iv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single ivec4 uniform variable or an ivec4 uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniform1uiv
public static void glProgramUniform1uiv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single uint uniform variable or a uint uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniform2uiv
public static void glProgramUniform2uiv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single uvec2 uniform variable or a uvec2 uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniform3uiv
public static void glProgramUniform3uiv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single uvec3 uniform variable or a uvec3 uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniform4uiv
public static void glProgramUniform4uiv(int program, int location, java.nio.IntBuffer value)
Specifies the value of a single uvec4 uniform variable or a uvec4 uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniform1fv
public static void glProgramUniform1fv(int program, int location, java.nio.FloatBuffer value)
Specifies the value of a single float uniform variable or a float uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniform2fv
public static void glProgramUniform2fv(int program, int location, java.nio.FloatBuffer value)
Specifies the value of a single vec2 uniform variable or a vec2 uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniform3fv
public static void glProgramUniform3fv(int program, int location, java.nio.FloatBuffer value)
Specifies the value of a single vec3 uniform variable or a vec3 uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniform4fv
public static void glProgramUniform4fv(int program, int location, java.nio.FloatBuffer value)
Specifies the value of a single vec4 uniform variable or a vec4 uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniform1dv
public static void glProgramUniform1dv(int program, int location, java.nio.DoubleBuffer value)
Specifies the value of a single double uniform variable or a double uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniform2dv
public static void glProgramUniform2dv(int program, int location, java.nio.DoubleBuffer value)
Specifies the value of a single dvec2 uniform variable or a dvec2 uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniform3dv
public static void glProgramUniform3dv(int program, int location, java.nio.DoubleBuffer value)
Specifies the value of a single dvec3 uniform variable or a dvec3 uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniform4dv
public static void glProgramUniform4dv(int program, int location, java.nio.DoubleBuffer value)
Specifies the value of a single dvec4 uniform variable or a dvec4 uniform variable array for a specified program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedvalue
- an array ofcount
values that will be used to update the specified uniform variable
-
glProgramUniformMatrix2fv
public static void glProgramUniformMatrix2fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat2 uniform variable or a mat2 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix3fv
public static void glProgramUniformMatrix3fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat3 uniform variable or a mat3 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix4fv
public static void glProgramUniformMatrix4fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat4 uniform variable or a mat4 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix2dv
public static void glProgramUniformMatrix2dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat2 uniform variable or a dmat2 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix3dv
public static void glProgramUniformMatrix3dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat3 uniform variable or a dmat3 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix4dv
public static void glProgramUniformMatrix4dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat4 uniform variable or a dmat4 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix2x3fv
public static void glProgramUniformMatrix2x3fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat2x3 uniform variable or a mat2x3 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix3x2fv
public static void glProgramUniformMatrix3x2fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat3x2 uniform variable or a mat3x2 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix2x4fv
public static void glProgramUniformMatrix2x4fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat2x4 uniform variable or a mat2x4 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix4x2fv
public static void glProgramUniformMatrix4x2fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat4x2 uniform variable or a mat4x2 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix3x4fv
public static void glProgramUniformMatrix3x4fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat3x4 uniform variable or a mat3x4 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix4x3fv
public static void glProgramUniformMatrix4x3fv(int program, int location, boolean transpose, java.nio.FloatBuffer value)
Specifies the value of a single mat4x3 uniform variable or a mat4x3 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix2x3dv
public static void glProgramUniformMatrix2x3dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat2x3 uniform variable or a dmat2x3 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix3x2dv
public static void glProgramUniformMatrix3x2dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat3x2 uniform variable or a dmat3x2 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix2x4dv
public static void glProgramUniformMatrix2x4dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat2x4 uniform variable or a dmat2x4 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix4x2dv
public static void glProgramUniformMatrix4x2dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat4x2 uniform variable or a dmat4x2 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix3x4dv
public static void glProgramUniformMatrix3x4dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat3x4 uniform variable or a dmat3x4 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glProgramUniformMatrix4x3dv
public static void glProgramUniformMatrix4x3dv(int program, int location, boolean transpose, java.nio.DoubleBuffer value)
Specifies the value of a single dmat4x3 uniform variable or a dmat4x3 uniform variable array for the current program object.- Parameters:
program
- the handle of the program containing the uniform variable to be modifiedlocation
- the location of the uniform variable to be modifiedtranspose
- whether to transpose the matrix as the values are loaded into the uniform variablevalue
- an array ofcount
values that will be used to update the specified uniform matrix variable
-
glValidateProgramPipeline
public static void glValidateProgramPipeline(int pipeline)
Validates a program pipeline object against current GL state.- Parameters:
pipeline
- the name of a program pipeline object to validate
-
glGetProgramPipelineInfoLog
public static void glGetProgramPipelineInfoLog(int pipeline, java.nio.IntBuffer length, java.nio.ByteBuffer infoLog)
Retrieves the info log string from a program pipeline object.- Parameters:
pipeline
- the name of a program pipeline object from which to retrieve the info loglength
- a variable into which will be written the number of characters written intoinfoLog
infoLog
- an array of characters into which will be written the info log forpipeline
-
glGetProgramPipelineInfoLog
public static java.lang.String glGetProgramPipelineInfoLog(int pipeline, int bufSize)
Retrieves the info log string from a program pipeline object.- Parameters:
pipeline
- the name of a program pipeline object from which to retrieve the info logbufSize
- the maximum number of characters, including the null terminator, that may be written intoinfoLog
-
glGetProgramPipelineInfoLog
public static java.lang.String glGetProgramPipelineInfoLog(int pipeline)
Retrieves the info log string from a program pipeline object.- Parameters:
pipeline
- the name of a program pipeline object from which to retrieve the info log
-
glDeleteProgramPipelines
public static void glDeleteProgramPipelines(int[] pipelines)
Array version of:DeleteProgramPipelines
-
glGenProgramPipelines
public static void glGenProgramPipelines(int[] pipelines)
Array version of:GenProgramPipelines
-
glGetProgramPipelineiv
public static void glGetProgramPipelineiv(int pipeline, int pname, int[] params)
Array version of:GetProgramPipelineiv
-
glProgramUniform1iv
public static void glProgramUniform1iv(int program, int location, int[] value)
Array version of:ProgramUniform1iv
-
glProgramUniform2iv
public static void glProgramUniform2iv(int program, int location, int[] value)
Array version of:ProgramUniform2iv
-
glProgramUniform3iv
public static void glProgramUniform3iv(int program, int location, int[] value)
Array version of:ProgramUniform3iv
-
glProgramUniform4iv
public static void glProgramUniform4iv(int program, int location, int[] value)
Array version of:ProgramUniform4iv
-
glProgramUniform1uiv
public static void glProgramUniform1uiv(int program, int location, int[] value)
Array version of:ProgramUniform1uiv
-
glProgramUniform2uiv
public static void glProgramUniform2uiv(int program, int location, int[] value)
Array version of:ProgramUniform2uiv
-
glProgramUniform3uiv
public static void glProgramUniform3uiv(int program, int location, int[] value)
Array version of:ProgramUniform3uiv
-
glProgramUniform4uiv
public static void glProgramUniform4uiv(int program, int location, int[] value)
Array version of:ProgramUniform4uiv
-
glProgramUniform1fv
public static void glProgramUniform1fv(int program, int location, float[] value)
Array version of:ProgramUniform1fv
-
glProgramUniform2fv
public static void glProgramUniform2fv(int program, int location, float[] value)
Array version of:ProgramUniform2fv
-
glProgramUniform3fv
public static void glProgramUniform3fv(int program, int location, float[] value)
Array version of:ProgramUniform3fv
-
glProgramUniform4fv
public static void glProgramUniform4fv(int program, int location, float[] value)
Array version of:ProgramUniform4fv
-
glProgramUniform1dv
public static void glProgramUniform1dv(int program, int location, double[] value)
Array version of:ProgramUniform1dv
-
glProgramUniform2dv
public static void glProgramUniform2dv(int program, int location, double[] value)
Array version of:ProgramUniform2dv
-
glProgramUniform3dv
public static void glProgramUniform3dv(int program, int location, double[] value)
Array version of:ProgramUniform3dv
-
glProgramUniform4dv
public static void glProgramUniform4dv(int program, int location, double[] value)
Array version of:ProgramUniform4dv
-
glProgramUniformMatrix2fv
public static void glProgramUniformMatrix2fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix2fv
-
glProgramUniformMatrix3fv
public static void glProgramUniformMatrix3fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix3fv
-
glProgramUniformMatrix4fv
public static void glProgramUniformMatrix4fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix4fv
-
glProgramUniformMatrix2dv
public static void glProgramUniformMatrix2dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix2dv
-
glProgramUniformMatrix3dv
public static void glProgramUniformMatrix3dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix3dv
-
glProgramUniformMatrix4dv
public static void glProgramUniformMatrix4dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix4dv
-
glProgramUniformMatrix2x3fv
public static void glProgramUniformMatrix2x3fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix2x3fv
-
glProgramUniformMatrix3x2fv
public static void glProgramUniformMatrix3x2fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix3x2fv
-
glProgramUniformMatrix2x4fv
public static void glProgramUniformMatrix2x4fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix2x4fv
-
glProgramUniformMatrix4x2fv
public static void glProgramUniformMatrix4x2fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix4x2fv
-
glProgramUniformMatrix3x4fv
public static void glProgramUniformMatrix3x4fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix3x4fv
-
glProgramUniformMatrix4x3fv
public static void glProgramUniformMatrix4x3fv(int program, int location, boolean transpose, float[] value)
Array version of:ProgramUniformMatrix4x3fv
-
glProgramUniformMatrix2x3dv
public static void glProgramUniformMatrix2x3dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix2x3dv
-
glProgramUniformMatrix3x2dv
public static void glProgramUniformMatrix3x2dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix3x2dv
-
glProgramUniformMatrix2x4dv
public static void glProgramUniformMatrix2x4dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix2x4dv
-
glProgramUniformMatrix4x2dv
public static void glProgramUniformMatrix4x2dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix4x2dv
-
glProgramUniformMatrix3x4dv
public static void glProgramUniformMatrix3x4dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix3x4dv
-
glProgramUniformMatrix4x3dv
public static void glProgramUniformMatrix4x3dv(int program, int location, boolean transpose, double[] value)
Array version of:ProgramUniformMatrix4x3dv
-
glGetProgramPipelineInfoLog
public static void glGetProgramPipelineInfoLog(int pipeline, int[] length, java.nio.ByteBuffer infoLog)
Array version of:GetProgramPipelineInfoLog
-
-


Bilingual students who master English before high school more likely to graduate on time
HONOLULU (AP) - Hawaii education officials say public school students who study and master English as a second language before high school were more likely to graduate on time than native speakers.
The Honolulu Star-Advertiser reported Sunday that 90% of students who completed the state’s English Learner program before entering high school graduated on time.
Data presented to the state Board of Education Nov. 7 shows students who did not require English-language support had an on-time graduation rate of 83%.
Officials report a 69% on-time graduation rate for students enrolled in the English Learner program during high school.
Officials say the lag is expected since those students have not yet mastered the school language of instruction.
The information on English learners was prepared by the Hawaii P-20 Partnerships for Education.
Copyright 2019 The Associated Press. All rights reserved. This material may not be published, broadcast, rewritten or redistributed.


DMENU(1) DMENU(1) NAME dmenu - dynamic menu SYNOPSIS dmenu [-b] [-i] [-l lines] [-m monitor] [-p prompt] [-fn font] [-nb color] [-nf color] [-sb color] [-sf color] [-v] dmenu_run ... dmenu_path DESCRIPTION dmenu is a dynamic menu for X, originally designed for dwm(1). It man‐ ages huge numbers of user-defined menu items efficiently. dmenu reads a list of newline-separated items from standard input and creates a menu. When the user selects an item or enters any text and presses Return, their choice is printed to standard output and dmenu ter‐ minates. dmenu_run is a dmenu script used by dwm which lists programs in the user's PATH and executes the selected item. dmenu_path is a program used by dmenu_run to find and cache a list of executables. OPTIONS -b dmenu appears at the bottom of the screen. -i dmenu matches menu items case insensitively. -l lines dmenu lists items vertically, with the given number of lines. -m monitor dmenu appears on the given Xinerama screen. -p prompt defines the prompt to be displayed to the left of the input field. -fn font defines the font or font set used. -nb color defines the normal background color. #RGB, #RRGGBB, and color names are supported. -nf color defines the normal foreground color. -sb color defines the selected background color. -sf color defines the selected foreground color. -v prints version information to standard output, then exits. USAGE dmenu is completely controlled by the keyboard. Besides standard Unix line editing and item selection (Up/Down/Left/Right, PageUp/PageDown, Home/End), the following keys are recognized: Tab (Control-i) Copy the selected item to the input field. Return (Control-j) Confirm selection. Prints the selected item to standard output and exits, returning success. Shift-Return (Control-Shift-j) Confirm input. Prints the input text to standard output and exits, returning success. Escape (Control-c) Exit without selecting an item, returning failure. Control-y Paste the current X selection into the input field. SEE ALSO dwm(1) dmenu-4.2.1 DMENU(1)


Augmented.js Presentation SASS/CSS Module
What this is
Augmented.js Presentation CSS is a custom implementation of Google's Material Design.
See Material Design.
The difference from other libraries is the idea it could be used everywhere regardless of framework.
Also, the animations are pure css vs javascript, so some things will not be 100% but more performant with less footprint.
Examples of design system
Styled elements are based on the basic HTML5 elements with little extra markup or classes. The intention is to be simple to impliment. These examples are at the atomic level.
Table of Contents
- Input Fields
- Buttons
- Menu
Input Fields
Text fields let users enter and edit text. These are multiple ways to create them.
Label around input
Label next to input
Container with label and input
Container with label and input (large)
Container with label and checkbox
Container with label and checkbox (large)
Buttons
Text fields let users enter and edit text. These are multiple ways to create them.
Solid colored buttons
Outlined colored buttons
Flat buttons
Round colored buttons
Round Mini colored buttons
Menu
In Header or Panel
Stuff in the panel


A problem has been detected and Windows has been shut down to prevent damage to your computer.
The problem seems to be caused by the following file: SPCMDCON.SYS
PAGE_FAULT_IN_NONPAGED_AREA
If this is the first time you've seen this stop error screen, restart your computer. if this screen appears again, follow these steps:
Check to make sure any new hardware or software is properly installed. If this is a new installation, ask your hardware or software manufacturer for any Windows updates you might need.
If problems continue, disable or remove any newly installed hardware or software. Disable BIOS memory options such as caching or shadowing. If you need to use Safe Mode to remove or disable components, restart your computer, press F8 to select Advanced Startup Options, and then select Safe Mode.
Technical information:
*** STOP: 0x00000049 (0xFD34C900, 0x0000F0006, 0x00000009, 0x847075cc)


Beautiful Soup Documentation — Beautiful Soup 4.9.0 documentation
Navigation
index
Beautiful Soup 4.9.0 documentation »
Beautiful Soup Documentation
Beautiful Soup Documentation¶
Beautiful Soup is a
Python library for pulling data out of HTML and XML files. It works
with your favorite parser to provide idiomatic ways of navigating,
searching, and modifying the parse tree. It commonly saves programmers
hours or days of work.
These instructions illustrate all major features of Beautiful Soup 4,
with examples. I show you what the library is good for, how it works,
how to use it, how to make it do what you want, and what to do when it
violates your expectations.
This document covers Beautiful Soup version 4.9.3. The examples in
this documentation should work the same way in Python 2.7 and Python
3.8.
You might be looking for the documentation for Beautiful Soup 3.
If so, you should know that Beautiful Soup 3 is no longer being
developed and that support for it will be dropped on or after December
31, 2020. If you want to learn about the differences between Beautiful
Soup 3 and Beautiful Soup 4, see Porting code to BS4.
This documentation has been translated into other languages by
Beautiful Soup users:
这篇文档当然还有中文版.
このページは日本語で利用できます(外部リンク)
이 문서는 한국어 번역도 가능합니다.
Este documento também está disponível em Português do Brasil.
Эта документация доступна на русском языке.
Getting help¶
If you have questions about Beautiful Soup, or run into problems,
send mail to the discussion group. If
your problem involves parsing an HTML document, be sure to mention
what the diagnose() function says about
that document.
Quick Start¶
Here’s an HTML document I’ll be using as an example throughout this
document. It’s part of a story from Alice in Wonderland:
html_doc = """<title>The Dormouse's story</title>

The Dormouse's story

Once upon a time there were three little sisters; and their names were
Elsie,
Lacie and
Tillie;
and they lived at the bottom of a well.

...

"""
Running the “three sisters” document through Beautiful Soup gives us a
BeautifulSoup object, which represents the document as a nested
data structure:
from bs4 import BeautifulSoup
soup = BeautifulSoup(html_doc, 'html.parser')
print(soup.prettify())
#
#
# <title>
# The Dormouse's story
# </title>
#
#
#

#
# The Dormouse's story
#
#

#

# Once upon a time there were three little sisters; and their names were
#
# Elsie
#
# ,
#
# Lacie
#
# and
#
# Tillie
#
# ; and they lived at the bottom of a well.
#

#

# ...
#

#
#
Here are some simple ways to navigate that data structure:
soup.title
# <title>The Dormouse's story</title>
soup.title.name
# u'title'
soup.title.string
# u'The Dormouse's story'
soup.title.parent.name
# u'head'
soup.p
#
The Dormouse's story

soup.p['class']
# u'title'
soup.a
# Elsie
soup.find_all('a')
# [Elsie,
# Lacie,
# Tillie]
soup.find(id="link3")
# Tillie
One common task is extracting all the URLs found within a page’s  tags:
for link in soup.find_all('a'):
print(link.get('href'))
# http://example.com/elsie
# http://example.com/lacie
# http://example.com/tillie
Another common task is extracting all the text from a page:
print(soup.get_text())
# The Dormouse's story
#
# The Dormouse's story
#
# Once upon a time there were three little sisters; and their names were
# Elsie,
# Lacie and
# Tillie;
# and they lived at the bottom of a well.
#
# ...
Does this look like what you need? If so, read on.
Installing Beautiful Soup¶
If you’re using a recent version of Debian or Ubuntu Linux, you can
install Beautiful Soup with the system package manager:
$ apt-get install python-bs4 (for Python 2)
$ apt-get install python3-bs4 (for Python 3)
Beautiful Soup 4 is published through PyPi, so if you can’t install it
with the system packager, you can install it with easy_install or
pip. The package name is beautifulsoup4, and the same package
works on Python 2 and Python 3. Make sure you use the right version of
pip or easy_install for your Python version (these may be named
pip3 and easy_install3 respectively if you’re using Python 3).
$ easy_install beautifulsoup4
$ pip install beautifulsoup4
(The BeautifulSoup package is not what you want. That’s
the previous major release, Beautiful Soup 3. Lots of software uses
BS3, so it’s still available, but if you’re writing new code you
should install beautifulsoup4.)
If you don’t have easy_install or pip installed, you can
download the Beautiful Soup 4 source tarball and
install it with setup.py.
$ python setup.py install
If all else fails, the license for Beautiful Soup allows you to
package the entire library with your application. You can download the
tarball, copy its bs4 directory into your application’s codebase,
and use Beautiful Soup without installing it at all.
I use Python 2.7 and Python 3.8 to develop Beautiful Soup, but it
should work with other recent versions.
Problems after installation¶
Beautiful Soup is packaged as Python 2 code. When you install it for
use with Python 3, it’s automatically converted to Python 3 code. If
you don’t install the package, the code won’t be converted. There have
also been reports on Windows machines of the wrong version being
installed.
If you get the ImportError “No module named HTMLParser”, your
problem is that you’re running the Python 2 version of the code under
Python 3.
If you get the ImportError “No module named html.parser”, your
problem is that you’re running the Python 3 version of the code under
Python 2.
In both cases, your best bet is to completely remove the Beautiful
Soup installation from your system (including any directory created
when you unzipped the tarball) and try the installation again.
If you get the SyntaxError “Invalid syntax” on the line
ROOT_TAG_NAME = u'[document]', you need to convert the Python 2
code to Python 3. You can do this either by installing the package:
$ python3 setup.py install
or by manually running Python’s 2to3 conversion script on the
bs4 directory:
$ 2to3-3.2 -w bs4
Installing a parser¶
Beautiful Soup supports the HTML parser included in Python’s standard
library, but it also supports a number of third-party Python parsers.
One is the lxml parser. Depending on your setup,
you might install lxml with one of these commands:
$ apt-get install python-lxml
$ easy_install lxml
$ pip install lxml
Another alternative is the pure-Python html5lib parser, which parses HTML the way a
web browser does. Depending on your setup, you might install html5lib
with one of these commands:
$ apt-get install python-html5lib
$ easy_install html5lib
$ pip install html5lib
This table summarizes the advantages and disadvantages of each parser library:
Parser
Typical usage
Advantages
Disadvantages
Python’s html.parser
BeautifulSoup(markup, "html.parser")
Batteries included
Decent speed
Lenient (As of Python 2.7.3
and 3.2.)
Not as fast as lxml,
less lenient than
html5lib.
lxml’s HTML parser
BeautifulSoup(markup, "lxml")
Very fast
Lenient
External C dependency
lxml’s XML parser
BeautifulSoup(markup, "lxml-xml")
BeautifulSoup(markup, "xml")
Very fast
The only currently supported
XML parser
External C dependency
html5lib
BeautifulSoup(markup, "html5lib")
Extremely lenient
Parses pages the same way a
web browser does
Creates valid HTML5
Very slow
External Python
dependency
If you can, I recommend you install and use lxml for speed. If you’re
using a very old version of Python – earlier than 2.7.3 or 3.2.2 –
it’s essential that you install lxml or html5lib. Python’s built-in
HTML parser is just not very good in those old versions.
Note that if a document is invalid, different parsers will generate
different Beautiful Soup trees for it. See Differences
between parsers for details.
Making the soup¶
To parse a document, pass it into the BeautifulSoup
constructor. You can pass in a string or an open filehandle:
from bs4 import BeautifulSoup
with open("index.html") as fp:
soup = BeautifulSoup(fp, 'html.parser')
soup = BeautifulSoup("a web page", 'html.parser')
First, the document is converted to Unicode, and HTML entities are
converted to Unicode characters:
print(BeautifulSoup("Sacré bleu!", "html.parser"))
# Sacré bleu!
Beautiful Soup then parses the document using the best available
parser. It will use an HTML parser unless you specifically tell it to
use an XML parser. (See Parsing XML.)
Kinds of objects¶
Beautiful Soup transforms a complex HTML document into a complex tree
of Python objects. But you’ll only ever have to deal with about four
kinds of objects: Tag, NavigableString, BeautifulSoup,
and Comment.
Tag¶
A Tag object corresponds to an XML or HTML tag in the original document:
soup = BeautifulSoup('Extremely bold', 'html.parser')
tag = soup.b
type(tag)
# <class 'bs4.element.Tag'>
Tags have a lot of attributes and methods, and I’ll cover most of them
in Navigating the tree and Searching the tree. For now, the most
important features of a tag are its name and attributes.
Name¶
Every tag has a name, accessible as .name:
tag.name
# 'b'
If you change a tag’s name, the change will be reflected in any HTML
markup generated by Beautiful Soup:
tag.name = "blockquote"
tag
#
Extremely bold

Attributes¶
A tag may have any number of attributes. The tag  has an attribute “id” whose value is
“boldest”. You can access a tag’s attributes by treating the tag like
a dictionary:
tag = BeautifulSoup('bold', 'html.parser').b
tag['id']
# 'boldest'
You can access that dictionary directly as .attrs:
tag.attrs
# {'id': 'boldest'}
You can add, remove, and modify a tag’s attributes. Again, this is
done by treating the tag as a dictionary:
tag['id'] = 'verybold'
tag['another-attribute'] = 1
tag
#
del tag['id']
del tag['another-attribute']
tag
# bold
tag['id']
# KeyError: 'id'
tag.get('id')
# None
Multi-valued attributes¶
HTML 4 defines a few attributes that can have multiple values. HTML 5
removes a couple of them, but defines a few more. The most common
multi-valued attribute is class (that is, a tag can have more than
one CSS class). Others include rel, rev, accept-charset,
headers, and accesskey. Beautiful Soup presents the value(s)
of a multi-valued attribute as a list:
css_soup = BeautifulSoup('

', 'html.parser')
css_soup.p['class']
# ['body']
css_soup = BeautifulSoup('

', 'html.parser')
css_soup.p['class']
# ['body', 'strikeout']
If an attribute looks like it has more than one value, but it’s not
a multi-valued attribute as defined by any version of the HTML
standard, Beautiful Soup will leave the attribute alone:
id_soup = BeautifulSoup('

', 'html.parser')
id_soup.p['id']
# 'my id'
When you turn a tag back into a string, multiple attribute values are
consolidated:
rel_soup = BeautifulSoup('
Back to the homepage
', 'html.parser')
rel_soup.a['rel']
# ['index']
rel_soup.a['rel'] = ['index', 'contents']
print(rel_soup.p)
#
Back to the homepage

You can disable this by passing multi_valued_attributes=None as a
keyword argument into the BeautifulSoup constructor:
no_list_soup = BeautifulSoup('

', 'html.parser', multi_valued_attributes=None)
no_list_soup.p['class']
# 'body strikeout'
You can use get_attribute_list to get a value that’s always a
list, whether or not it’s a multi-valued atribute:
id_soup.p.get_attribute_list('id')
# ["my id"]
If you parse a document as XML, there are no multi-valued attributes:
xml_soup = BeautifulSoup('

', 'xml')
xml_soup.p['class']
# 'body strikeout'
Again, you can configure this using the multi_valued_attributes argument:
class_is_multi= { '*' : 'class'}
xml_soup = BeautifulSoup('

', 'xml', multi_valued_attributes=class_is_multi)
xml_soup.p['class']
# ['body', 'strikeout']
You probably won’t need to do this, but if you do, use the defaults as
a guide. They implement the rules described in the HTML specification:
from bs4.builder import builder_registry
builder_registry.lookup('html').DEFAULT_CDATA_LIST_ATTRIBUTES
NavigableString¶
A string corresponds to a bit of text within a tag. Beautiful Soup
uses the NavigableString class to contain these bits of text:
soup = BeautifulSoup('Extremely bold', 'html.parser')
tag = soup.b
tag.string
# 'Extremely bold'
type(tag.string)
# <class 'bs4.element.NavigableString'>
A NavigableString is just like a Python Unicode string, except
that it also supports some of the features described in Navigating
the tree and Searching the tree. You can convert a
NavigableString to a Unicode string with unicode() (in
Python 2) or str (in Python 3):
unicode_string = str(tag.string)
unicode_string
# 'Extremely bold'
type(unicode_string)
# <type 'str'>
You can’t edit a string in place, but you can replace one string with
another, using replace_with():
tag.string.replace_with("No longer bold")
tag
# No longer bold
NavigableString supports most of the features described in
Navigating the tree and Searching the tree, but not all of
them. In particular, since a string can’t contain anything (the way a
tag may contain a string or another tag), strings don’t support the
.contents or .string attributes, or the find() method.
If you want to use a NavigableString outside of Beautiful Soup,
you should call unicode() on it to turn it into a normal Python
Unicode string. If you don’t, your string will carry around a
reference to the entire Beautiful Soup parse tree, even when you’re
done using Beautiful Soup. This is a big waste of memory.
BeautifulSoup¶
The BeautifulSoup object represents the parsed document as a
whole. For most purposes, you can treat it as a Tag
object. This means it supports most of the methods described in
Navigating the tree and Searching the tree.
You can also pass a BeautifulSoup object into one of the methods
defined in Modifying the tree, just as you would a Tag. This
lets you do things like combine two parsed documents:
doc = BeautifulSoup("<document><content/>INSERT FOOTER HERE</document", "xml")
footer = BeautifulSoup("Here's the footer", "xml")
doc.find(text="INSERT FOOTER HERE").replace_with(footer)
# 'INSERT FOOTER HERE'
print(doc)
# <?xml version="1.0" encoding="utf-8"?>
# <document><content/>Here's the footer</document>
Since the BeautifulSoup object doesn’t correspond to an actual
HTML or XML tag, it has no name and no attributes. But sometimes it’s
useful to look at its .name, so it’s been given the special
.name “[document]”:
soup.name
# '[document]'
Comments and other special strings¶
Tag, NavigableString, and BeautifulSoup cover almost
everything you’ll see in an HTML or XML file, but there are a few
leftover bits. The main one you’ll probably encounter
is the comment:
markup = ""
soup = BeautifulSoup(markup, 'html.parser')
comment = soup.b.string
type(comment)
# <class 'bs4.element.Comment'>
The Comment object is just a special type of NavigableString:
comment
# 'Hey, buddy. Want to buy a used parser'
But when it appears as part of an HTML document, a Comment is
displayed with special formatting:
print(soup.b.prettify())
#
#
#
Beautiful Soup also defines classes called Stylesheet, Script,
and TemplateString, for embedded CSS stylesheets (any strings
found inside a


org.apache.xml.utils
Class Constants
java.lang.Object
org.apache.xml.utils.Constants
- Direct Known Subclasses:
- Constants
public class Constants
- extends java.lang.Object
Primary constants used by the XSLT Processor
|
Field Summary |
static java.lang.String |
S_BUILTIN_EXTENSIONS_URL
S_BUILTIN_EXTENSIONS_URL is a mnemonic for the XML Namespace
(http://xml.apache.org/xalan) predefined to signify Xalan's
built-in XSLT Extensions. |
static java.lang.String |
S_BUILTIN_OLD_EXTENSIONS_URL
The old built-in extension url. |
static java.lang.String |
S_EXSLT_COMMON_URL
EXSLT extension namespaces. |
static java.lang.String |
S_EXSLT_DATETIME_URL
EXSLT extension namespaces. |
static java.lang.String |
S_EXSLT_DYNAMIC_URL
EXSLT extension namespaces. |
static java.lang.String |
S_EXSLT_FUNCTIONS_URL
EXSLT extension namespaces. |
static java.lang.String |
S_EXSLT_MATH_URL
EXSLT extension namespaces. |
static java.lang.String |
S_EXSLT_SETS_URL
EXSLT extension namespaces. |
static java.lang.String |
S_EXSLT_STRINGS_URL
EXSLT extension namespaces. |
static java.lang.String |
S_EXTENSIONS_JAVA_URL
Xalan extension namespaces. |
static java.lang.String |
S_EXTENSIONS_LOTUSXSL_JAVA_URL
Xalan extension namespaces. |
static java.lang.String |
S_EXTENSIONS_OLD_JAVA_URL
Xalan extension namespaces. |
static java.lang.String |
S_EXTENSIONS_PIPE_URL
Xalan extension namespaces. |
static java.lang.String |
S_EXTENSIONS_REDIRECT_URL
Xalan extension namespaces. |
static java.lang.String |
S_EXTENSIONS_SQL_URL
Xalan extension namespaces. |
static java.lang.String |
S_EXTENSIONS_XALANLIB_URL
Xalan extension namespaces. |
static java.lang.String |
S_OLDXSLNAMESPACEURL
Mnemonics for standard XML Namespace URIs, as Java Strings:
S_XMLNAMESPACEURI (http://www.w3.org/XML/1998/namespace) is the
URI permanantly assigned to the "xml:" prefix. |
static java.lang.String |
S_VENDOR
Authorship mnemonics, as Java Strings. |
static java.lang.String |
S_VENDORURL
Authorship mnemonics, as Java Strings. |
static java.lang.String |
S_XMLNAMESPACEURI
Mnemonics for standard XML Namespace URIs, as Java Strings:
S_XMLNAMESPACEURI (http://www.w3.org/XML/1998/namespace) is the
URI permanantly assigned to the "xml:" prefix. |
static java.lang.String |
S_XSLNAMESPACEURL
Mnemonics for standard XML Namespace URIs, as Java Strings:
S_XMLNAMESPACEURI (http://www.w3.org/XML/1998/namespace) is the
URI permanantly assigned to the "xml:" prefix. |
static double |
XSLTVERSUPPORTED
The minimum version of XSLT supported by this processor. |
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
S_XMLNAMESPACEURI
public static final java.lang.String S_XMLNAMESPACEURI
- Mnemonics for standard XML Namespace URIs, as Java Strings:
- S_XMLNAMESPACEURI (http://www.w3.org/XML/1998/namespace) is the
URI permanantly assigned to the "xml:" prefix. This is used for some
features built into the XML specification itself, such as xml:space
and xml:lang. It was defined by the W3C's XML Namespaces spec.
- S_XSLNAMESPACEURL (http://www.w3.org/1999/XSL/Transform) is the
URI which indicates that a name may be an XSLT directive. In most
XSLT stylesheets, this is bound to the "xsl:" prefix. It's defined
by the W3C's XSLT Recommendation.
- S_OLDXSLNAMESPACEURL (http://www.w3.org/XSL/Transform/1.0) was
used in early prototypes of XSLT processors for much the same purpose
as S_XSLNAMESPACEURL. It is now considered obsolete, and the version
of XSLT which it signified is not fully compatable with the final
XSLT Recommendation, so what it really signifies is a badly obsolete
stylesheet.
- See Also:
- Constant Field Values
S_XSLNAMESPACEURL
public static final java.lang.String S_XSLNAMESPACEURL
- Mnemonics for standard XML Namespace URIs, as Java Strings:
- S_XMLNAMESPACEURI (http://www.w3.org/XML/1998/namespace) is the
URI permanantly assigned to the "xml:" prefix. This is used for some
features built into the XML specification itself, such as xml:space
and xml:lang. It was defined by the W3C's XML Namespaces spec.
- S_XSLNAMESPACEURL (http://www.w3.org/1999/XSL/Transform) is the
URI which indicates that a name may be an XSLT directive. In most
XSLT stylesheets, this is bound to the "xsl:" prefix. It's defined
by the W3C's XSLT Recommendation.
- S_OLDXSLNAMESPACEURL (http://www.w3.org/XSL/Transform/1.0) was
used in early prototypes of XSLT processors for much the same purpose
as S_XSLNAMESPACEURL. It is now considered obsolete, and the version
of XSLT which it signified is not fully compatable with the final
XSLT Recommendation, so what it really signifies is a badly obsolete
stylesheet.
- See Also:
- Constant Field Values
S_OLDXSLNAMESPACEURL
public static final java.lang.String S_OLDXSLNAMESPACEURL
- Mnemonics for standard XML Namespace URIs, as Java Strings:
- S_XMLNAMESPACEURI (http://www.w3.org/XML/1998/namespace) is the
URI permanantly assigned to the "xml:" prefix. This is used for some
features built into the XML specification itself, such as xml:space
and xml:lang. It was defined by the W3C's XML Namespaces spec.
- S_XSLNAMESPACEURL (http://www.w3.org/1999/XSL/Transform) is the
URI which indicates that a name may be an XSLT directive. In most
XSLT stylesheets, this is bound to the "xsl:" prefix. It's defined
by the W3C's XSLT Recommendation.
- S_OLDXSLNAMESPACEURL (http://www.w3.org/XSL/Transform/1.0) was
used in early prototypes of XSLT processors for much the same purpose
as S_XSLNAMESPACEURL. It is now considered obsolete, and the version
of XSLT which it signified is not fully compatable with the final
XSLT Recommendation, so what it really signifies is a badly obsolete
stylesheet.
- See Also:
- Constant Field Values
S_VENDOR
public static final java.lang.String S_VENDOR
- Authorship mnemonics, as Java Strings. Not standardized,
as far as I know.
- S_VENDOR -- the name of the organization/individual who published
this XSLT processor.
- S_VENDORURL -- URL where one can attempt to retrieve more
information about this publisher and product.
- See Also:
- Constant Field Values
S_VENDORURL
public static final java.lang.String S_VENDORURL
- Authorship mnemonics, as Java Strings. Not standardized,
as far as I know.
- S_VENDOR -- the name of the organization/individual who published
this XSLT processor.
- S_VENDORURL -- URL where one can attempt to retrieve more
information about this publisher and product.
- See Also:
- Constant Field Values
S_BUILTIN_EXTENSIONS_URL
public static final java.lang.String S_BUILTIN_EXTENSIONS_URL
- S_BUILTIN_EXTENSIONS_URL is a mnemonic for the XML Namespace
(http://xml.apache.org/xalan) predefined to signify Xalan's
built-in XSLT Extensions. When used in stylesheets, this is often
bound to the "xalan:" prefix.
- See Also:
- Constant Field Values
S_BUILTIN_OLD_EXTENSIONS_URL
public static final java.lang.String S_BUILTIN_OLD_EXTENSIONS_URL
- The old built-in extension url. It is still supported for
backward compatibility.
- See Also:
- Constant Field Values
S_EXTENSIONS_OLD_JAVA_URL
public static final java.lang.String S_EXTENSIONS_OLD_JAVA_URL
- Xalan extension namespaces.
- See Also:
- Constant Field Values
S_EXTENSIONS_JAVA_URL
public static final java.lang.String S_EXTENSIONS_JAVA_URL
- Xalan extension namespaces.
- See Also:
- Constant Field Values
S_EXTENSIONS_LOTUSXSL_JAVA_URL
public static final java.lang.String S_EXTENSIONS_LOTUSXSL_JAVA_URL
- Xalan extension namespaces.
- See Also:
- Constant Field Values
S_EXTENSIONS_XALANLIB_URL
public static final java.lang.String S_EXTENSIONS_XALANLIB_URL
- Xalan extension namespaces.
- See Also:
- Constant Field Values
S_EXTENSIONS_REDIRECT_URL
public static final java.lang.String S_EXTENSIONS_REDIRECT_URL
- Xalan extension namespaces.
- See Also:
- Constant Field Values
S_EXTENSIONS_PIPE_URL
public static final java.lang.String S_EXTENSIONS_PIPE_URL
- Xalan extension namespaces.
- See Also:
- Constant Field Values
S_EXTENSIONS_SQL_URL
public static final java.lang.String S_EXTENSIONS_SQL_URL
- Xalan extension namespaces.
- See Also:
- Constant Field Values
S_EXSLT_COMMON_URL
public static final java.lang.String S_EXSLT_COMMON_URL
- EXSLT extension namespaces.
- See Also:
- Constant Field Values
S_EXSLT_MATH_URL
public static final java.lang.String S_EXSLT_MATH_URL
- EXSLT extension namespaces.
- See Also:
- Constant Field Values
S_EXSLT_SETS_URL
public static final java.lang.String S_EXSLT_SETS_URL
- EXSLT extension namespaces.
- See Also:
- Constant Field Values
S_EXSLT_DATETIME_URL
public static final java.lang.String S_EXSLT_DATETIME_URL
- EXSLT extension namespaces.
- See Also:
- Constant Field Values
S_EXSLT_FUNCTIONS_URL
public static final java.lang.String S_EXSLT_FUNCTIONS_URL
- EXSLT extension namespaces.
- See Also:
- Constant Field Values
S_EXSLT_DYNAMIC_URL
public static final java.lang.String S_EXSLT_DYNAMIC_URL
- EXSLT extension namespaces.
- See Also:
- Constant Field Values
S_EXSLT_STRINGS_URL
public static final java.lang.String S_EXSLT_STRINGS_URL
- EXSLT extension namespaces.
- See Also:
- Constant Field Values
XSLTVERSUPPORTED
public static final double XSLTVERSUPPORTED
- The minimum version of XSLT supported by this processor.
- See Also:
- Constant Field Values
Constants
public Constants()
Copyright ? 2006 Apache XML Project. All Rights Reserved.


OK this is weird because this was only a dream but experienced the best feeling I have ever experienced in my life. Let me explain.
It was a rather strange dream where I got shot. Rather passively or nihilistically, I accepted that I was going to die. Just as you're reading this right now through your little eyeballs, that perspective, first person, floated up and I was thinking 'Wow. I died.'
I can't relate what happened any other way than stating my human first person perspective was only a 'droplet' and I merged with something that was more like a plane of water. I thought I was 3 dimensional but in fact I wasn't. It's paradoxical to state a 'plane of water' having more 'depth' than 3-dimensions but this 'Godhead', as I'm now inclined to calling it, was everything.
This plane of water was absolutely everything. I was the sky, and the trees, and my dead body, and my killer. Ceasation of 'thinking' or consciousness or ego altered to experiencing everything simultaneously.
I felt the most wonderful feeling at that moment. Euphorea, and a memory that has affected me since. A vision perhaps. I question whether DMT was somehow involved, some people speculate it is released at the point of death.
We'll this opens a door for research and not just this report that I call a spiritual journey. What if a human has a locked mind to a 'God Conscious'? I'm more of a scientist than a hippie. This vision has lead me to question the value and veracity of many things now (perhaps made me a bit more nihilistic).
I want to go back. I love life but I'd rather be everything.  Then what is time? An illusion.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


{% extends 'explore_base.html' %} {% block main %}
If you are developing in OpenLayers, you will want to use the OpenLayers XYZ class.
An example of your solution might look similar to the code below.
layer = new OpenLayers.Layer.XYZ( "{{layer.name}}", "{{layer.url}}", { sphericalMercator: true, isBaseLayer: false } ); map.addLayer(layer);
If you are developing with Leaflet, you will want to use the Leaflet TileLayer class.
An example of your solution might look similar to the code below.
layer = new L.TileLayer( "{{layer.url}}", { minZoom: 1, maxZoom: 12 } ); map.addLayer(layer);
If your development environment includes the javascript ArcGIS API, your application can consume the data using the WebTiledLayer class. An example of this can be found in the ArcGIS API for JavaScript documentation. An example similar to the one given in the documentation, but with the URL replaced, would be as follows
var wtl = esri.layers.WebTiledLayer; var layer = new wtl("{{arctile_url}} ", { "id": "{{layer.name}}" }); map.addLayer(layer);
ArcGIS Resources offers a sample page that lets you experiment with tiled/cached map services. By selecting Custom Web Tiled Layer (at the top), removing the subdomains entry, and replacing the URL template with the following link you can see the map display the {{layer.name}} dataset.
{{arctile_url}}
{{arcrest_url}} ID: {{layer.arcgis_layers}}
If you are developing in OpenLayers, you will want to use the OpenLayers ArcGIS93Rest class.
An example of your solution might look similar to the code below.
layer = new OpenLayers.Layer.ArcGIS93Rest( "{{layer.name}}", "{{layer.url}}", { layers: "show:{{layer.arcgis_layers}}", transparent: true }, { isBaseLayer: false } ); map.addLayer(layer);
URL: {{layer.url}}
Layer name: {{layer.wms_slug}}
If you are developing in OpenLayers 2, you will want to use the OpenLayers WMS class.
An example of your solution might look similar to the code below.
layer = new OpenLayers.Layer.WMS( "{{layer.name}}"", "{{layer.url}}", { layers: {{layer.wms_slug}}, transparent: "true", format: "image/png" }, {} ); map.addLayer(layer);