STIR  6.2.0
multiply_plane_scale_factorsImageProcessor.h
Go to the documentation of this file.
1 //
2 //
12 /*
13  Copyright (C) 2003- 2007, Hammersmith Imanet
14  SPDX-License-Identifier: Apache-2.0
15  See STIR/LICENSE.txt for details
16 */
17 
18 #ifndef __stir_multiply_plane_scale_factorsImageProcessor_H__
19 #define __stir_multiply_plane_scale_factorsImageProcessor_H__
20 
22 #include "stir/DataProcessor.h"
24 #include <vector>
25 
26 START_NAMESPACE_STIR
27 
28 template <typename elemT>
29 class VectorWithOffset;
30 
35 template <typename elemT>
37  : public RegisteredParsingObject<multiply_plane_scale_factorsImageProcessor<elemT>,
38  DataProcessor<DiscretisedDensity<3, elemT>>,
39  DataProcessor<DiscretisedDensity<3, elemT>>>
40 {
41 private:
44  DataProcessor<DiscretisedDensity<3, elemT>>>
45  base_type;
46 
47 public:
48  static const char* const registered_name;
51  multiply_plane_scale_factorsImageProcessor(const std::vector<double>& plane_scale_factors);
52 
53 private:
54  std::vector<double> plane_scale_factors;
55 
56  virtual void set_defaults();
57  virtual void initialise_keymap();
58 
59  Succeeded virtual_set_up(const DiscretisedDensity<3, elemT>& image);
60 
61  void virtual_apply(DiscretisedDensity<3, elemT>& out_density, const DiscretisedDensity<3, elemT>& in_density) const;
62  void virtual_apply(DiscretisedDensity<3, elemT>& density) const;
63 };
64 
65 END_NAMESPACE_STIR
66 
67 #endif
Simply multiplies each plane in an image with a scale factor.
Definition: multiply_plane_scale_factorsImageProcessor.h:36
A templated class for vectors, but with indices starting not from 0.
Definition: ArrayFilter1DUsingConvolution.h:31
Declaration of class stir::DataProcessor.
Base class that defines an interface for classes that do data processing.
Definition: DataProcessor.h:46
defines the stir::DiscretisedDensity class
Parent class for all leaves in a RegisteredObject hierarchy that do parsing of parameter files...
Definition: RegisteredParsingObject.h:77
a class containing an enumeration type that can be used by functions to signal successful operation o...
Definition: Succeeded.h:43
Declaration of class stir::RegisteredParsingObject.
This abstract class is the basis for all image representations.
Definition: FBP2DReconstruction.h:35