| Index: Source/core/platform/graphics/filters/ReferenceFilter.h
|
| diff --git a/Source/core/rendering/style/StyleCustomFilterProgramCache.h b/Source/core/platform/graphics/filters/ReferenceFilter.h
|
| similarity index 60%
|
| copy from Source/core/rendering/style/StyleCustomFilterProgramCache.h
|
| copy to Source/core/platform/graphics/filters/ReferenceFilter.h
|
| index eb30517001047900a37647c5c2243ce06e456800..aa07dd2657c28e3cf2c8296a236477c8f4b5b665 100644
|
| --- a/Source/core/rendering/style/StyleCustomFilterProgramCache.h
|
| +++ b/Source/core/platform/graphics/filters/ReferenceFilter.h
|
| @@ -27,37 +27,43 @@
|
| * SUCH DAMAGE.
|
| */
|
|
|
| -#ifndef StyleCustomFilterProgramCache_h
|
| -#define StyleCustomFilterProgramCache_h
|
| +#ifndef ReferenceFilter_h
|
| +#define ReferenceFilter_h
|
|
|
| -#include "core/platform/graphics/filters/custom/CustomFilterProgramInfo.h"
|
| -#include <wtf/FastAllocBase.h>
|
| -#include <wtf/HashMap.h>
|
| +#include "core/platform/graphics/FloatRect.h"
|
| +#include "core/platform/graphics/filters/Filter.h"
|
| +#include "wtf/PassRefPtr.h"
|
| +#include "wtf/RefPtr.h"
|
|
|
| namespace WebCore {
|
|
|
| -class StyleCustomFilterProgram;
|
| -class CustomFilterProgramInfo;
|
| +class ReferenceFilterOperation;
|
| +class SourceGraphic;
|
| +class FilterEffect;
|
|
|
| -class StyleCustomFilterProgramCache {
|
| - WTF_MAKE_FAST_ALLOCATED;
|
| +class ReferenceFilter: public Filter {
|
| public:
|
| - StyleCustomFilterProgramCache();
|
| - ~StyleCustomFilterProgramCache();
|
| + static PassRefPtr<ReferenceFilter> create()
|
| + {
|
| + return adoptRef(new ReferenceFilter());
|
| + }
|
|
|
| - // Lookups a StyleCustomFilterProgram that has similar parameters with the specified program.
|
| - StyleCustomFilterProgram* lookup(StyleCustomFilterProgram*) const;
|
| - StyleCustomFilterProgram* lookup(const CustomFilterProgramInfo&) const;
|
| + virtual FloatRect sourceImageRect() const { return FloatRect(); };
|
| + virtual FloatRect filterRegion() const { return FloatRect(); }
|
|
|
| - void add(StyleCustomFilterProgram*);
|
| - void remove(StyleCustomFilterProgram*);
|
| + void setLastEffect(PassRefPtr<FilterEffect>);
|
| + FilterEffect* lastEffect() const { return m_lastEffect.get(); }
|
| +
|
| + SourceGraphic* sourceGraphic() const { return m_sourceGraphic.get(); }
|
|
|
| private:
|
| - typedef HashMap<CustomFilterProgramInfo, StyleCustomFilterProgram*> CacheMap;
|
| - CacheMap m_cache;
|
| -};
|
| + ReferenceFilter();
|
| + ~ReferenceFilter();
|
|
|
| -} // namespace WebCore
|
| + RefPtr<SourceGraphic> m_sourceGraphic;
|
| + RefPtr<FilterEffect> m_lastEffect;
|
| +};
|
|
|
| +}
|
|
|
| -#endif // StyleCustomFilterProgramCache_h
|
| +#endif // ReferenceFilter_h
|
|
|