STIR 6.4.0
DAVImageFilter3D.h
Go to the documentation of this file.
1//
2//
3/*
4 Copyright (C) 2000- 2007, Hammersmith Imanet Ltd
5 This file is part of STIR.
6
7 SPDX-License-Identifier: Apache-2.0
8
9 See STIR/LICENSE.txt for details
10*/
21
22#ifndef __stir_DAVImageFilter3D_H__
23#define __stir_DAVImageFilter3D_H__
24
25#include "stir/DataProcessor.h"
28
30
31START_NAMESPACE_STIR
32
33template <typename coordT>
34class CartesianCoordinate3D;
35
36template <typename elemT>
37class DAVImageFilter3D : public RegisteredParsingObject<DAVImageFilter3D<elemT>,
38 DataProcessor<DiscretisedDensity<3, elemT>>,
39 DataProcessor<DiscretisedDensity<3, elemT>>>
40
41{
42public:
43 static const char* const registered_name;
44
45 DAVImageFilter3D();
46
47 DAVImageFilter3D(const CartesianCoordinate3D<int>& mask_radius);
48
49private:
50 DAVArrayFilter3D<elemT> dav_filter;
51 int mask_radius_x;
52 int mask_radius_y;
53 int mask_radius_z;
54
55 virtual void set_defaults();
56 virtual void initialise_keymap();
57
58 Succeeded virtual_set_up(const DiscretisedDensity<3, elemT>& density);
59 void virtual_apply(DiscretisedDensity<3, elemT>& density, const DiscretisedDensity<3, elemT>& in_density) const;
60 void virtual_apply(DiscretisedDensity<3, elemT>& density) const;
61};
62
63END_NAMESPACE_STIR
64
65#endif // DAVImageFilter3D
Declaration of class stir::DataProcessor.
defines the stir::DiscretisedDensity class
Declaration of class stir::RegisteredParsingObject.