@Override public final void dispose(/*@Nonnull*/ final GL gl) { Check.notNull(gl, "GL cannot be null"); doDispose(gl); listeners.clear(); pipeline.dispose(gl); }
/** * Changes the quad pipeline. * * @param gl Current OpenGL context * @param pipeline Quad pipeline to change to */ private final void setPipeline( /*@Nonnull*/ final GL gl, /*@Nonnull*/ final QuadPipeline pipeline) { assert gl != null : "GL should not be null"; assert pipeline != null : "Pipeline should not be null"; final QuadPipeline oldPipeline = this.pipeline; final QuadPipeline newPipeline = pipeline; // Remove the old pipeline if (oldPipeline != null) { oldPipeline.removeListener(this); oldPipeline.dispose(gl); this.pipeline = null; } // Store the new pipeline newPipeline.addListener(this); this.pipeline = newPipeline; pipelineDirty = false; }