12 #ifndef AIMS_SIGNALFILTER_FILTERINGFUNCTION_LINEAR_RGB_H
13 #define AIMS_SIGNALFILTER_FILTERINGFUNCTION_LINEAR_RGB_H
22 template <
typename T>
class VolumeRef;
25 class StructuringElement;
29 #define AIMS_LIN_FILTERFUNC_MULTICHANNEL_DECLARE( NAME, T ) \
31 class NAME< T >: public LinearFilteringFunction< T > \
34 NAME( carto::Object options = carto::none() ); \
35 NAME( const NAME< T > & other ); \
37 NAME<T> & operator=( const NAME< T > & other ); \
38 virtual NAME * clone() const; \
39 virtual void setOptions( const carto::Object & options ); \
40 virtual void updateOptions( const carto::Object & options ); \
41 const std::vector<int> & getAmplitude() const; \
42 virtual T execute( const carto::VolumeRef<T> & in ) const; \
44 NAME< T::ChannelType > _m; \
AIMS_LIN_FILTERFUNC_MULTICHANNEL_DECLARE(GaborFilterFunc, AimsRGB)