SimpleFilter Class Reference
SimpleFilter is a base class for predefined simple filters (MagFilter, DiffFilter...). The 'simplicity' lies in the fact that only one value per input function can be combined (e.g., not a value and a derivative). If this is not sufficient, a full-fledged filter must be derived from the Filter class (see VonMisesFilter). SimpleFilter is also intended for the user to be able to easily create custom filters only by supplying the combining function.
More...
#include <filter.h>
Inherits Filter.
Inherited by AbsFilter, AngleFilter, DiffFilter, ImagFilter, MagFilter, RealFilter, SquareFilter, and SumFilter.
List of all members.
Public Member Functions |
| | SimpleFilter (void(*filter_fn)(int n, scalar *val1, scalar *result), MeshFunction *sln1, int item1=H2D_FN_VAL) |
| | SimpleFilter (void(*filter_fn)(int n, scalar *val1, scalar *val2, scalar *result), MeshFunction *sln1, MeshFunction *sln2, int item1=H2D_FN_VAL, int item2=H2D_FN_VAL) |
| | SimpleFilter (void(*filter_fn)(int n, scalar *val1, scalar *val2, scalar *val3, scalar *result), MeshFunction *sln1, MeshFunction *sln2, MeshFunction *sln3, int item1=H2D_FN_VAL, int item2=H2D_FN_VAL, int item3=H2D_FN_VAL) |
| | SimpleFilter (void(*filter_fn)(int n, scalar *val1, scalar *val2, scalar *val3, scalar *val4, scalar *result), MeshFunction *sln1, MeshFunction *sln2, MeshFunction *sln3, MeshFunction *sln4, int item1=H2D_FN_VAL, int item2=H2D_FN_VAL, int item3=H2D_FN_VAL, int item4=H2D_FN_VAL) |
| virtual scalar | get_pt_value (double x, double y, int item=H2D_FN_VAL_0) |
Protected Member Functions |
| void | init_components () |
| virtual void | precalculate (int order, int mask) |
| | precalculates the current function at the current integration points.
|
Protected Attributes |
| int | item [3] |
| void(* | filter_fn_1 )(int n, scalar *, scalar *) |
| void(* | filter_fn_2 )(int n, scalar *, scalar *, scalar *) |
| void(* | filter_fn_3 )(int n, scalar *, scalar *, scalar *, scalar *) |
| void(* | filter_fn_4 )(int n, scalar *, scalar *, scalar *, scalar *, scalar *) |
Detailed Description
SimpleFilter is a base class for predefined simple filters (MagFilter, DiffFilter...). The 'simplicity' lies in the fact that only one value per input function can be combined (e.g., not a value and a derivative). If this is not sufficient, a full-fledged filter must be derived from the Filter class (see VonMisesFilter). SimpleFilter is also intended for the user to be able to easily create custom filters only by supplying the combining function.
The user specifies the combining function, the arguments ('sln1', 'sln2', 'sln3'), and optionally the 'item' for each argument, which can be any of H2D_FN_VAL_0, H2D_FN_DX_0, H2D_FN_DY_0 etc.
SimpleFilter is vector-valued, if at least one input function is vector-valued and both components are specified in 'item', e.g., item1 = H2D_FN_DX (which is H2D_FN_DX_0 | H2D_FN_DX_1). Otherwise it is scalar-valued.
Constructor & Destructor Documentation
| SimpleFilter::SimpleFilter |
( |
void(*)(int n, scalar *val1, scalar *val2, scalar *val3, scalar *result) |
filter_fn, |
|
|
MeshFunction * |
sln1, |
|
|
MeshFunction * |
sln2, |
|
|
MeshFunction * |
sln3, |
|
|
int |
item1 = H2D_FN_VAL, |
|
|
int |
item2 = H2D_FN_VAL, |
|
|
int |
item3 = H2D_FN_VAL | |
|
) |
| | |
| SimpleFilter::SimpleFilter |
( |
void(*)(int n, scalar *val1, scalar *val2, scalar *val3, scalar *val4, scalar *result) |
filter_fn, |
|
|
MeshFunction * |
sln1, |
|
|
MeshFunction * |
sln2, |
|
|
MeshFunction * |
sln3, |
|
|
MeshFunction * |
sln4, |
|
|
int |
item1 = H2D_FN_VAL, |
|
|
int |
item2 = H2D_FN_VAL, |
|
|
int |
item3 = H2D_FN_VAL, |
|
|
int |
item4 = H2D_FN_VAL | |
|
) |
| | |
Member Function Documentation
| scalar SimpleFilter::get_pt_value |
( |
double |
x, |
|
|
double |
y, |
|
|
int |
item = H2D_FN_VAL_0 | |
|
) |
| | [virtual] |
| void SimpleFilter::init_components |
( |
|
) |
[protected] |
| void SimpleFilter::precalculate |
( |
int |
order, |
|
|
int |
mask | |
|
) |
| | [protected, virtual] |
precalculates the current function at the current integration points.
Implements Function< TYPE >.
Member Data Documentation
The documentation for this class was generated from the following files: