17 #ifndef mitkSUVFunctorPolicy_h
18 #define mitkSUVFunctorPolicy_h
207 double m_InjectedActivity = std::numeric_limits<double>::quiet_NaN();
209 double m_ScaleNumerator = std::numeric_limits<double>::quiet_NaN();
211 double m_HalfLife = std::numeric_limits<double>::quiet_NaN();
Generic functor policy for computing SUV on a per-voxel basis.
itk::Index< 3 > IndexType
3D image index type.
bool IsConfigured() const
Check whether the policy is fully configured and safe to invoke.
void SetInjectedActivity(double a)
Set the injected radioactivity.
ScalarType SUVPixelType
Pixel type for SUV output values.
SUVFunctorPolicy()
Default constructor.
bool operator!=(const SUVFunctorPolicy &other) const
Inequality comparison operator.
std::function< double(const IndexType &) > DecayTimeFunctionType
Function type for querying the decay time at a given image index.
DecayTimeFunctionType m_Functor
SUVFunctorPolicy(double injectedActivity, double scaleNumerator, double halfLife)
Construct a fully configured policy in one step.
virtual ~SUVFunctorPolicy()
Destructor.
void SetDecayTimeFunctor(const DecayTimeFunctionType &functor)
Set the functor used to query the decay time for a given voxel index.
bool operator==(const SUVFunctorPolicy &other) const
Equality comparison operator.
void SetScaleNumerator(double n)
Set the variant-specific scale numerator.
void SetHalfLife(double tau)
Set the radionuclide half-life.
SUVPixelType operator()(const SUVPixelType &value, const IndexType ¤tIndex) const
Compute the SUV for a single pixel value at a given image index.
Find image slices visible on a given plane.
double ScalarType
Scalar type used throughout MITK for geometric computations.