aimsalgo 6.0.0
Neuroimaging image processing
filteringfunction_element_rgb.h
Go to the documentation of this file.
1/* Copyright (C) 2000-2013 CEA
2 *
3 * This software and supporting documentation were developed by
4 * bioPICSEL
5 * CEA/DSV/I²BM/MIRCen/LMN, Batiment 61,
6 * 18, route du Panorama
7 * 92265 Fontenay-aux-Roses
8 * France
9 */
10
11
12#ifndef AIMS_SIGNALFILTER_FILTERINGFUNCTION_ELEMENT_RGB_H
13#define AIMS_SIGNALFILTER_FILTERINGFUNCTION_ELEMENT_RGB_H
14
15//--- aims -------------------------------------------------------------------
16#include <aims/rgb/rgb.h>
18//--- cartobase --------------------------------------------------------------
19#include <cartobase/object/object.h>
20//--- forward declarations ---------------------------------------------------
21namespace carto {
22 template <typename T> class VolumeRef;
23}
24namespace aims {
26}
27//----------------------------------------------------------------------------
28
29#define AIMS_ELEMENT_FILTERFUNC_MULTICHANNEL_DECLARE( NAME, VOXELTYPE ) \
30 template <> \
31 class NAME< VOXELTYPE >: public ElementFilteringFunction< VOXELTYPE > \
32 { \
33 public: \
34 NAME( carto::Object options = carto::none() ); \
35 NAME( const NAME< VOXELTYPE > & other ); \
36 virtual ~NAME(); \
37 NAME< VOXELTYPE > & operator=( const NAME< VOXELTYPE > & other ); \
38 virtual NAME * clone() const; \
39 virtual void setOptions( const carto::Object & options ); \
40 virtual void updateOptions( const carto::Object & options ); \
41 virtual VOXELTYPE execute( const carto::VolumeRef< VOXELTYPE > & in ) const; \
42 virtual VOXELTYPE execute( const carto::VolumeRef< VOXELTYPE > & in, \
43 const carto::rc_ptr<StructuringElement> & se ) const; \
44 protected: \
45 NAME< VOXELTYPE::ChannelType > _m; \
46 }
47
48namespace aims {
73} // namepsace aims
74
75#endif
#define AIMS_ELEMENT_FILTERFUNC_MULTICHANNEL_DECLARE(NAME, VOXELTYPE)
carto::VoxelRGBA AimsRGBA
carto::VoxelRGB AimsRGB