Medical Imaging Interaction Toolkit  2023.12.00
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
mitkAterialInputFunctionGenerator.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef mitkAterialInputFunctionGenerator_h
14 #define mitkAterialInputFunctionGenerator_h
15 
16 #include <mitkImage.h>
17 #include "mitkAIFBasedModelBase.h"
19 
20 
21 namespace mitk
22 {
34  {
35  public:
36 
38  itkNewMacro(Self);
39 
42  itkSetConstObjectMacro(DynamicImage, Image);
43  itkGetConstObjectMacro(DynamicImage, Image);
44 
47  itkSetConstObjectMacro(Mask, Image);
48  itkGetConstObjectMacro(Mask, Image);
49 
51  itkSetMacro(HCL, double);
52  itkGetConstReferenceMacro(HCL, double);
53 
54  //Common Value for Hematocrit level is 0.45
55  static const double DEFAULT_HEMATOCRIT_LEVEL;
56 
58  {
59  this->m_HCL = DEFAULT_HEMATOCRIT_LEVEL;
60  };
62  {
63  return DEFAULT_HEMATOCRIT_LEVEL;
64  }
65 
66  AIFBasedModelBase::AterialInputFunctionType GetAterialInputFunction();
67  ModelBase::TimeGridType GetAterialInputFunctionTimeGrid();
68 
69  protected:
71  {
72  m_Mask = nullptr;
73  m_DynamicImage = nullptr;
74  this->SetDefaultHematocritLevel();
75  };
76 
78 
79  //template <typename TPixel, unsigned int VDim>
80  //void DoCalculateAIF(itk::Image<TPixel, VDim>* image);
81 
84  virtual void CalculateAIFAndGetResult();
85 
87  virtual void CheckValidInputs() const;
88 
89  bool HasOutdatedResults();
90 
91 
92  itk::TimeStamp m_GenerationTimeStamp;
93 
94  private:
95  Image::ConstPointer m_DynamicImage;
96  Image::ConstPointer m_Mask;
97 
98 
100  ModelBase::TimeGridType m_AIFTimeGrid;
101 
102  double m_HCL;
103  };
104 
105 }
106 
107 #endif
MITKPHARMACOKINETICS_EXPORT
#define MITKPHARMACOKINETICS_EXPORT
Definition: MitkPharmacokineticsExports.h:15
mitk::AterialInputFunctionGenerator::m_GenerationTimeStamp
itk::TimeStamp m_GenerationTimeStamp
Definition: mitkAterialInputFunctionGenerator.h:92
mitk::AIFBasedModelBase::AterialInputFunctionType
itk::Array< double > AterialInputFunctionType
Definition: mitkAIFBasedModelBase.h:62
mitkImage.h
mitkAIFBasedModelBase.h
mitk::AterialInputFunctionGenerator::GetDefaultHematocritLevel
double GetDefaultHematocritLevel()
Definition: mitkAterialInputFunctionGenerator.h:61
mitk::AterialInputFunctionGenerator::AterialInputFunctionGenerator
AterialInputFunctionGenerator()
Definition: mitkAterialInputFunctionGenerator.h:70
mitk::Image
Image class for storing images.
Definition: mitkImage.h:69
itk::SmartPointer< const Self >
MitkPharmacokineticsExports.h
mitk::AterialInputFunctionGenerator
Compute the Aterial Input Function from a given dynamic image and a mask defining the tumour supplyin...
Definition: mitkAterialInputFunctionGenerator.h:33
mitkClassMacroItkParent
#define mitkClassMacroItkParent(className, SuperClassName)
Definition: mitkCommon.h:45
mitk
Find image slices visible on a given plane.
Definition: RenderingTests.dox:1
mitk::AterialInputFunctionGenerator::DEFAULT_HEMATOCRIT_LEVEL
static const double DEFAULT_HEMATOCRIT_LEVEL
Definition: mitkAterialInputFunctionGenerator.h:52
mitk::AterialInputFunctionGenerator::~AterialInputFunctionGenerator
~AterialInputFunctionGenerator() override
Definition: mitkAterialInputFunctionGenerator.h:77
mitk::ModelBase::TimeGridType
itk::Array< double > TimeGridType
Definition: mitkModelBase.h:62
mitk::AterialInputFunctionGenerator::SetDefaultHematocritLevel
void SetDefaultHematocritLevel()
Definition: mitkAterialInputFunctionGenerator.h:57