ImageFilter Class Reference


Detailed Description

This is the base image filter type defining the interface to image filters (blur, sharpen, dodge, burn, etc).

The filters themselves are implemented as plugins.

There are two differend kinds of image filters;

  • Spatial -- These include any where the output pixel depends on any pixel other than the matching (x, y) source pixel. This includes convolutions, warps or other deformations, scaling rotation etc.
  • Non Spatial -- where the output pixel depends only on its matching input pixel. Examples would include dodge, burn, lighten, darken, contrast, hue shift, invert, color curves, etc.

A filter plugin must be capable of handling processing where both the source and target images are in CPU memory.

It can optionaly support processing with both the source and target in textures. If it supports textures, AND Mudbox has the images in textures, it will be called upon to do the work there, otherwise it will be in a physically contiguous image in memory.

Definition at line 45 of file ImageFilter.h.

#include <ImageFilter.h>

Inheritance diagram for ImageFilter:
Inheritance graph
[legend]

List of all members.

Public Types

enum   FilterType { kInvalid, kSpatial, kNonSpatial }
enum   Location { kCPUMemory = 1, kGPUTexture = 2, kCPUorGPU = 3 }

Public Member Functions

FilterType  getType () const
  Get the filter type -- spatial or not spatial.
Location  getLocationSupported () const
const QString &  getName () const
  return the filter name.
virtual void  setParameterBlock (void *parmBlock, int size)
virtual int  getParameterBlockSize () const
virtual const void *  getParameterBlockPtr () const
virtual void  ProcessFilter (Image *src, Image *dst)
  The ProcessFilter API creates the contents of the destination Image or Texture.
virtual void  ProcessFilter (Texture *src, Texture *dst)

Protected Member Functions

  ImageFilter (void)

Protected Attributes

FilterType  m_FilterType
Location  m_LocationSupported
QString  m_FilterName

Member Enumeration Documentation

enum Location
Enumerator:
kCPUMemory 
kGPUTexture 
kCPUorGPU 

Definition at line 54 of file ImageFilter.h.

                  {
        kCPUMemory = 1, kGPUTexture = 2, kCPUorGPU = 3
    };

Constructor & Destructor Documentation

ImageFilter ( void  ) [protected]

Member Function Documentation

FilterType getType ( ) const [inline]

Get the filter type -- spatial or not spatial.

Definition at line 70 of file ImageFilter.h.

{ return m_FilterType;         }
Location getLocationSupported ( ) const [inline]

Definition at line 71 of file ImageFilter.h.

{ return m_LocationSupported;  }
const QString& getName ( ) const [inline]

return the filter name.

eg "Blur" or "Dodge", etc.

Definition at line 74 of file ImageFilter.h.

{ return m_FilterName; }
virtual void setParameterBlock ( void *  parmBlock,
int  size 
) [virtual]
virtual int getParameterBlockSize ( ) const [virtual]
virtual const void* getParameterBlockPtr ( ) const [virtual]
virtual void ProcessFilter ( Image src,
Image dst 
) [virtual]

The ProcessFilter API creates the contents of the destination Image or Texture.

virtual void ProcessFilter ( Texture src,
Texture dst 
) [virtual]

Member Data Documentation

Definition at line 63 of file ImageFilter.h.

QString m_FilterName [protected]

Definition at line 65 of file ImageFilter.h.


The documentation for this class was generated from the following file:

ImageFilter ImageFilter ImageFilter ImageFilter ImageFilter ImageFilter ImageFilter ImageFilter ImageFilter ImageFilter
ImageFilter ImageFilter ImageFilter ImageFilter ImageFilter ImageFilter ImageFilter ImageFilter ImageFilter ImageFilter