RTK  2.1.0
Reconstruction Toolkit
rtkSignalToInterpolationWeights.h
Go to the documentation of this file.
1 /*=========================================================================
2  *
3  * Copyright RTK Consortium
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0.txt
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  *=========================================================================*/
18 
19 #ifndef rtkSignalToInterpolationWeights_h
20 #define rtkSignalToInterpolationWeights_h
21 
22 #include "itkCSVFileReaderBase.h"
23 #include "itkArray2D.h"
24 
25 namespace rtk
26 {
27 
40 {
41 public:
42  ITK_DISALLOW_COPY_AND_ASSIGN(SignalToInterpolationWeights);
43 
49 
51  itkNewMacro(Self);
52 
55 
58 
60  using ValueType = float;
61 
63  void
64  Parse() override
65  {}
66 
68  virtual void
69  Update();
70 
73  virtual Array2DType
74  GetOutput();
75 
77  itkSetMacro(NumberOfReconstructedFrames, int);
78  itkGetMacro(NumberOfReconstructedFrames, int);
80 
82  void
83  SetSignal(const std::vector<double> signal);
84 
85 protected:
87  ~SignalToInterpolationWeights() override = default;
88 
90  void
91  PrintSelf(std::ostream & os, itk::Indent indent) const override;
92 
93 private:
96  std::vector<double> m_Signal;
97 };
98 
99 } // end namespace rtk
100 
101 #ifndef ITK_MANUAL_INSTANTIATION
102 # include "rtkSignalToInterpolationWeights.hxx"
103 #endif
104 
105 #endif
#define itkSetMacro(name, type)
Computes interpolation weights for 4D reconstruction.