summaryrefslogtreecommitdiffstats
path: root/chromium/third_party/WebKit/Source/platform/graphics/filters/custom/CustomFilterGlobalContext.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/WebKit/Source/platform/graphics/filters/custom/CustomFilterGlobalContext.h')
-rw-r--r--chromium/third_party/WebKit/Source/platform/graphics/filters/custom/CustomFilterGlobalContext.h83
1 files changed, 0 insertions, 83 deletions
diff --git a/chromium/third_party/WebKit/Source/platform/graphics/filters/custom/CustomFilterGlobalContext.h b/chromium/third_party/WebKit/Source/platform/graphics/filters/custom/CustomFilterGlobalContext.h
deleted file mode 100644
index 01f54d5fa92..00000000000
--- a/chromium/third_party/WebKit/Source/platform/graphics/filters/custom/CustomFilterGlobalContext.h
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the following
- * disclaimer.
- * 2. Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials
- * provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER “AS IS” AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
- * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
- * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifndef CustomFilterGlobalContext_h
-#define CustomFilterGlobalContext_h
-
-#include "platform/graphics/angle/ANGLEPlatformBridge.h"
-#include "platform/graphics/filters/custom/CustomFilterProgramInfo.h"
-#include "wtf/HashMap.h"
-#include "wtf/Noncopyable.h"
-#include "wtf/RefPtr.h"
-
-namespace WebCore {
-
-class CustomFilterValidatedProgram;
-class GraphicsContext3D;
-
-typedef HashMap<CustomFilterProgramInfo, CustomFilterValidatedProgram*> CustomFilterValidatedProgramsMap;
-
-class PLATFORM_EXPORT CustomFilterGlobalContext {
- WTF_MAKE_NONCOPYABLE(CustomFilterGlobalContext);
-public:
- CustomFilterGlobalContext();
- ~CustomFilterGlobalContext();
-
- GraphicsContext3D* context() const { return m_context.get(); }
-
- // CSS shaders not referenced from the CSS mix function should be validated just like regular WebGL shaders.
- // This ANGLE validator uses the SH_WEBGL_SPEC flag.
- ANGLEPlatformBridge* webglShaderValidator();
-
- // CSS shaders referenced from the CSS mix function should be validated slightly differently than WebGL shaders.
- // This ANGLE validator uses the SH_CSS_SHADERS_SPEC flag.
- // Under this flag, most notably:
- // - The "gl_FragColor" built-in is not available.
- // - Instead, the "css_MixColor" and "css_ColorMatrix" built-ins are available.
- // - The "css_" prefix is reserved.
- // - In the translated source that ANGLE returns, ANGLE renames the author's "main" function to "css_main".
- // The complete details are documented in ANGLE/ShaderLang.h.
- ANGLEPlatformBridge* mixShaderValidator();
-
- void prepareContextIfNeeded();
-
- PassRefPtr<CustomFilterValidatedProgram> getValidatedProgram(const CustomFilterProgramInfo&);
- void removeValidatedProgram(const CustomFilterValidatedProgram*);
-private:
- static PassOwnPtr<ANGLEPlatformBridge> createShaderValidator(ShShaderSpec);
-
- RefPtr<GraphicsContext3D> m_context;
- OwnPtr<ANGLEPlatformBridge> m_webglShaderValidator;
- OwnPtr<ANGLEPlatformBridge> m_mixShaderValidator;
- CustomFilterValidatedProgramsMap m_programs;
-};
-
-} // namespace WebCore
-
-#endif // CustomFilterGlobalContext_h