// Path: videffects/src/main/java/com/sherazkhilji/videffects/Constants.java
// public final class Constants {
// 
//     public static final int FLOAT_SIZE_BYTES = 4;
// 
//     public static final String DEFAULT_VERTEX_SHADER = "uniform mat4 uMVPMatrix;\n"
//             + "uniform mat4 uSTMatrix;\n"
//             + "attribute vec4 aPosition;\n"
//             + "attribute vec4 aTextureCoord;\n"
//             + "varying vec2 vTextureCoord;\n"
//             + "void main() {\n"
//             + "  gl_Position = uMVPMatrix * aPosition;\n"
//             + "  vTextureCoord = (uSTMatrix * aTextureCoord).xy;\n"
//             + "}\n";
// }
// 
// Path: videffects/src/main/java/com/sherazkhilji/videffects/interfaces/Filter.java
// public interface Filter {
// 
// 	public String getVertexShader();
// 
// 	public String getFragmentShader();
// 
// 	public void setIntensity(float intensity);
// }


import com.sherazkhilji.videffects.Constants;
import com.sherazkhilji.videffects.interfaces.Filter;
package com.sherazkhilji.videffects.filter;


public class AutoFixFilter implements Filter {

    private static final float SHIFT_SCALE = 1.0f / 256f;
    private static final float HIST_OFFSET = 0.5f / 766f;
    private static final float HIST_SCALE = 765f / 766f;
    private static final float DENSITY_OFFSET = 0.5f / 1024f;
    private static final float DENSITY_SCALE = 1023f / 1024f;

    private float intensity = 0.0F;
    private String shader;

    @Override
    public void setIntensity(float strength) {
        this.intensity = strength;
    }

    @Override
    public String getVertexShader() {
// Path: videffects/src/main/java/com/sherazkhilji/videffects/Constants.java
// public final class Constants {
// 
//     public static final int FLOAT_SIZE_BYTES = 4;
// 
//     public static final String DEFAULT_VERTEX_SHADER = "uniform mat4 uMVPMatrix;\n"
//             + "uniform mat4 uSTMatrix;\n"
//             + "attribute vec4 aPosition;\n"
//             + "attribute vec4 aTextureCoord;\n"
//             + "varying vec2 vTextureCoord;\n"
//             + "void main() {\n"
//             + "  gl_Position = uMVPMatrix * aPosition;\n"
//             + "  vTextureCoord = (uSTMatrix * aTextureCoord).xy;\n"
//             + "}\n";
// }
// 
// Path: videffects/src/main/java/com/sherazkhilji/videffects/interfaces/Filter.java
// public interface Filter {
// 
// 	public String getVertexShader();
// 
// 	public String getFragmentShader();
// 
// 	public void setIntensity(float intensity);
// }


// Path: videffects/src/main/java/com/sherazkhilji/videffects/filter/AutoFixFilter.java
import com.sherazkhilji.videffects.Constants;
import com.sherazkhilji.videffects.interfaces.Filter;

package com.sherazkhilji.videffects.filter;


public class AutoFixFilter implements Filter {

    private static final float SHIFT_SCALE = 1.0f / 256f;
    private static final float HIST_OFFSET = 0.5f / 766f;
    private static final float HIST_SCALE = 765f / 766f;
    private static final float DENSITY_OFFSET = 0.5f / 1024f;
    private static final float DENSITY_SCALE = 1023f / 1024f;

    private float intensity = 0.0F;
    private String shader;

    @Override
    public void setIntensity(float strength) {
        this.intensity = strength;
    }

    @Override
    public String getVertexShader() {
        return Constants.DEFAULT_VERTEX_SHADER;