# blur.cpp File Reference

Blur Implementation File. More...

`#include <synfig/general.h>`
`#include <synfig/surface.h>`
`#include "blur.h"`
`#include <stdexcept>`
`#include <ETL/stringf>`
`#include <ETL/pen>`
`#include <ETL/gaussian>`
`#include <ETL/boxblur>`

## Defines

#define | GAUSSIAN_ADJUSTMENT (0.05)

## Functions

template<typename T>
static T | zero ()
template<>
Color | zero< Color > ()
template<typename T, typename AT, class VP>
static void | GuassianBlur_2x2 (etl::surface< T, AT, VP > &surface)
template<typename T, typename AT, class VP>
static void | GuassianBlur_3x3 (etl::surface< T, AT, VP > &surface)
template<typename T, typename AT, class VP>
static void | GaussianBlur_5x5_ (etl::surface< T, AT, VP > &surface, T *SC0, T *SC1, T *SC2, T *SC3)
template<typename T, typename AT, class VP>
static void | GaussianBlur_5x5 (etl::surface< T, AT, VP > &surface)
template<typename T, typename AT, class VP>
static void | GuassianBlur_nxn (etl::surface< T, AT, VP > &surface, int n)
template<typename T, typename AT, class VP>
static void | GuassianBlur_2x1 (etl::surface< T, AT, VP > &surface)
template<typename T, typename AT, class VP>
static void | GuassianBlur_3x1 (etl::surface< T, AT, VP > &surface)
template<typename T, typename AT, class VP>
static void | GuassianBlur_1x2 (etl::surface< T, AT, VP > &surface)
template<typename T, typename AT, class VP>
static void | GuassianBlur_1x3 (etl::surface< T, AT, VP > &surface)

## Detailed Description

Blur Implementation File.

$Id$

## Define Documentation

#define GAUSSIAN_ADJUSTMENT (0.05)

## Function Documentation

template<typename T>

static T zero | ( |  | ) | `[inline, static]`

Referenced by Plant::calc_bounding_rect(), Plant::get_bounding_rect(), LumaKey::get_bounding_rect(), synfig::Layer_Shape::get_bounding_rect(), NoiseDistort::get_bounding_rect(), Halftone2::Halftone2(), synfig::ValueNode_BLine::operator()(), Plant::Plant(), radial_interpolation(), synfig::Layer_PasteCanvas::set_time(), and Outline::sync().

template<>

Color zero< Color > | ( |  | ) | `[inline]`

template<typename T, typename AT, class VP>

static void GuassianBlur_2x2 | ( | etl::surface< T, AT, VP > & | surface | ) | `[inline, static]`

Referenced by Blur::operator()().

template<typename T, typename AT, class VP>

static void GuassianBlur_3x3 | ( | etl::surface< T, AT, VP > & | surface | ) | `[inline, static]`

template<typename T, typename AT, class VP>

static void GaussianBlur_5x5_ | ( | etl::surface< T, AT, VP > & | surface,
|  | T * | SC0,
|  | T * | SC1,
|  | T * | SC2,
|  | T * | SC3 |
| ) |  |  | `[inline, static]`

Referenced by GaussianBlur_5x5().

template<typename T, typename AT, class VP>

static void GaussianBlur_5x5 | ( | etl::surface< T, AT, VP > & | surface | ) | `[inline, static]`

References GaussianBlur_5x5_().

template<typename T, typename AT, class VP>

static void GuassianBlur_nxn | ( | etl::surface< T, AT, VP > & | surface,
|  | int | n |
| ) |  |  | `[inline, static]`

template<typename T, typename AT, class VP>

static void GuassianBlur_2x1 | ( | etl::surface< T, AT, VP > & | surface | ) | `[inline, static]`

Referenced by Blur::operator()().

template<typename T, typename AT, class VP>

static void GuassianBlur_3x1 | ( | etl::surface< T, AT, VP > & | surface | ) | `[inline, static]`

Referenced by Blur::operator()().

template<typename T, typename AT, class VP>

static void GuassianBlur_1x2 | ( | etl::surface< T, AT, VP > & | surface | ) | `[inline, static]`

Referenced by Blur::operator()().

template<typename T, typename AT, class VP>

static void GuassianBlur_1x3 | ( | etl::surface< T, AT, VP > & | surface | ) | `[inline, static]`

Referenced by Blur::operator()().