Home | History | Annotate | Download | only in filters
      1 /*
      2  *  Copyright (C) 2009 Dirk Schulze <krit (at) webkit.org>
      3  *  Copyright (C) 2009 Brent Fulgham <bfulgham (at) webkit.org>
      4  *
      5  *   This library is free software; you can redistribute it and/or
      6  *  modify it under the terms of the GNU Library General Public
      7  *  License as published by the Free Software Foundation; either
      8  *  version 2 of the License, or (at your option) any later version.
      9  *
     10  *  This library is distributed in the hope that it will be useful,
     11  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
     12  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     13  *  Library General Public License for more details.
     14  *
     15  *  You should have received a copy of the GNU Library General Public License
     16  *  aint with this library; see the file COPYING.LIB.  If not, write to
     17  *  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
     18  *  Boston, MA 02110-1301, USA.
     19  */
     20 
     21 #ifndef ImageBufferFilter_h
     22 #define ImageBufferFilter_h
     23 
     24 #if ENABLE(FILTERS)
     25 #include "Filter.h"
     26 #include "FilterEffect.h"
     27 #include "FloatRect.h"
     28 #include "FloatSize.h"
     29 
     30 #include <wtf/PassRefPtr.h>
     31 #include <wtf/RefCounted.h>
     32 #include <wtf/RefPtr.h>
     33 
     34 namespace WebCore {
     35 
     36 class ImageBufferFilter : public Filter {
     37 public:
     38     static PassRefPtr<ImageBufferFilter> create();
     39 
     40     virtual FloatRect filterRegion() const { return FloatRect(); }
     41     virtual FloatRect sourceImageRect() const { return FloatRect(); }
     42 
     43     // SVG specific
     44     virtual bool effectBoundingBoxMode() const { return false; }
     45 
     46     virtual FloatSize maxImageSize() const { return FloatSize(); }
     47     virtual void calculateEffectSubRegion(FilterEffect*) { }
     48 
     49 private:
     50     ImageBufferFilter();
     51 };
     52 
     53 } // namespace WebCore
     54 
     55 #endif // ENABLE(FILTERS)
     56 
     57 #endif // ImageBufferFilter_h
     58