Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages |
#include <elxBaseComponent.h>
The BaseComponent class is a class that all elastix components should inherit from.
Most elastix component inherit both from an ITK class and from the elx::BaseComponent class. The BaseComponent class contains some methods that each component is supposed to have, but are not defined in itk::Object.
Definition at line 62 of file elxBaseComponent.h.
Public Member Functions | |
virtual void | AfterEachIteration (void) |
virtual void | AfterEachIterationBase (void) |
virtual void | AfterEachResolution (void) |
virtual void | AfterEachResolutionBase (void) |
virtual void | AfterRegistration (void) |
virtual void | AfterRegistrationBase (void) |
virtual int | BeforeAll (void) |
virtual int | BeforeAllBase (void) |
virtual void | BeforeEachResolution (void) |
virtual void | BeforeEachResolutionBase (void) |
virtual void | BeforeRegistration (void) |
virtual void | BeforeRegistrationBase (void) |
virtual const char * | elxGetClassName (void) const |
const char * | GetComponentLabel (void) const |
ITK_DISALLOW_COPY_AND_ASSIGN (BaseComponent) | |
itkTypeMacroNoParent (BaseComponent) | |
void | SetComponentLabel (const char *label, unsigned int idx) |
Static Public Member Functions | |
static std::string | ConvertSecondsToDHMS (const double totalSeconds, const unsigned int precision) |
static void | InitializeElastixExecutable () |
static bool | IsElastixLibrary () |
Protected Member Functions | |
BaseComponent ()=default | |
virtual | ~BaseComponent ()=default |
Private Attributes | |
std::string | m_ComponentLabel |
|
protecteddefault |
|
protectedvirtualdefault |
|
inlinevirtual |
Reimplemented in elastix::PreconditionedGradientDescent< TElastix >, elastix::AdvancedMattesMutualInformationMetric< TElastix >, elastix::MissingStructurePenalty< TElastix >, elastix::PolydataDummyPenalty< TElastix >, elastix::TransformRigidityPenalty< TElastix >, elastix::AdaGrad< TElastix >, elastix::AdaptiveStochasticGradientDescent< TElastix >, elastix::AdaptiveStochasticLBFGS< TElastix >, elastix::AdaptiveStochasticVarianceReducedGradient< TElastix >, elastix::CMAEvolutionStrategy< TElastix >, elastix::ConjugateGradient< TElastix >, elastix::ConjugateGradientFRPR< TElastix >, elastix::FiniteDifferenceGradientDescent< TElastix >, elastix::FullSearch< TElastix >, elastix::Powell< TElastix >, elastix::PreconditionedStochasticGradientDescent< TElastix >, elastix::QuasiNewtonLBFGS< TElastix >, elastix::RegularStepGradientDescent< TElastix >, elastix::RSGDEachParameterApart< TElastix >, elastix::Simplex< TElastix >, elastix::SimultaneousPerturbation< TElastix >, elastix::StandardGradientDescent< TElastix >, elastix::MultiMetricMultiResolutionRegistration< TElastix >, elastix::BSplineTransformWithDiffusion< TElastix >, and elastix::ElastixTemplate< TFixedImage, TMovingImage >.
Definition at line 97 of file elxBaseComponent.h.
|
inlinevirtual |
Reimplemented in elastix::MetricBase< TElastix >, and elastix::ResamplerBase< TElastix >.
Definition at line 85 of file elxBaseComponent.h.
|
inlinevirtual |
Reimplemented in elastix::PreconditionedGradientDescent< TElastix >, elastix::MissingStructurePenalty< TElastix >, elastix::PolydataDummyPenalty< TElastix >, elastix::AdaGrad< TElastix >, elastix::AdaptiveStochasticGradientDescent< TElastix >, elastix::AdaptiveStochasticLBFGS< TElastix >, elastix::AdaptiveStochasticVarianceReducedGradient< TElastix >, elastix::CMAEvolutionStrategy< TElastix >, elastix::ConjugateGradient< TElastix >, elastix::ConjugateGradientFRPR< TElastix >, elastix::FiniteDifferenceGradientDescent< TElastix >, elastix::FullSearch< TElastix >, elastix::Powell< TElastix >, elastix::PreconditionedStochasticGradientDescent< TElastix >, elastix::QuasiNewtonLBFGS< TElastix >, elastix::RegularStepGradientDescent< TElastix >, elastix::RSGDEachParameterApart< TElastix >, elastix::Simplex< TElastix >, elastix::SimultaneousPerturbation< TElastix >, elastix::StandardGradientDescent< TElastix >, and elastix::ElastixTemplate< TFixedImage, TMovingImage >.
Definition at line 96 of file elxBaseComponent.h.
|
inlinevirtual |
Reimplemented in elastix::ResamplerBase< TElastix >.
Definition at line 84 of file elxBaseComponent.h.
|
inlinevirtual |
Reimplemented in elastix::PreconditionedGradientDescent< TElastix >, elastix::AdaGrad< TElastix >, elastix::AdaptiveStochasticGradientDescent< TElastix >, elastix::AdaptiveStochasticLBFGS< TElastix >, elastix::AdaptiveStochasticVarianceReducedGradient< TElastix >, elastix::CMAEvolutionStrategy< TElastix >, elastix::ConjugateGradient< TElastix >, elastix::ConjugateGradientFRPR< TElastix >, elastix::FiniteDifferenceGradientDescent< TElastix >, elastix::FullSearch< TElastix >, elastix::Powell< TElastix >, elastix::PreconditionedStochasticGradientDescent< TElastix >, elastix::QuasiNewtonLBFGS< TElastix >, elastix::RegularStepGradientDescent< TElastix >, elastix::RSGDEachParameterApart< TElastix >, elastix::Simplex< TElastix >, elastix::SimultaneousPerturbation< TElastix >, elastix::StandardGradientDescent< TElastix >, elastix::BSplineTransformWithDiffusion< TElastix >, and elastix::ElastixTemplate< TFixedImage, TMovingImage >.
Definition at line 98 of file elxBaseComponent.h.
|
inlinevirtual |
Reimplemented in elastix::OptimizerBase< TElastix >, elastix::ResamplerBase< TElastix >, elastix::TransformBase< TElastix >, and elastix::ElastixBase.
Definition at line 86 of file elxBaseComponent.h.
|
inlinevirtual |
Reimplemented in elastix::RayCastInterpolator< TElastix >, elastix::RayCastResampleInterpolator< TElastix >, elastix::AdvancedBSplineTransform< TElastix >, elastix::AffineLogStackTransform< TElastix >, elastix::BSplineStackTransform< TElastix >, elastix::EulerStackTransform< TElastix >, elastix::MultiBSplineTransformWithNormal< TElastix >, elastix::RecursiveBSplineTransform< TElastix >, elastix::SplineKernelTransform< TElastix >, elastix::TranslationStackTransform< TElastix >, elastix::Configuration, and elastix::ElastixTemplate< TFixedImage, TMovingImage >.
Definition at line 74 of file elxBaseComponent.h.
|
inlinevirtual |
Callback methods that each component of elastix is supposed to have. These methods can be overridden in each base component (like MetricBase, TransformBase, etc.). In this way similar behavior for a group of components can be implemented.
Reimplemented in elastix::CorrespondingPointsEuclideanDistanceMetric< TElastix >, elastix::MissingStructurePenalty< TElastix >, elastix::PolydataDummyPenalty< TElastix >, elastix::TransformBase< TElastix >, and elastix::ElastixBase.
Definition at line 73 of file elxBaseComponent.h.
|
inlinevirtual |
Reimplemented in elastix::PreconditionedGradientDescent< TElastix >, elastix::FixedGenericPyramid< TElastix >, elastix::BSplineInterpolator< TElastix >, elastix::BSplineInterpolatorFloat< TElastix >, elastix::RayCastInterpolator< TElastix >, elastix::ReducedDimensionBSplineInterpolator< TElastix >, elastix::AdvancedMattesMutualInformationMetric< TElastix >, elastix::AdvancedMeanSquaresMetric< TElastix >, elastix::AdvancedNormalizedCorrelationMetric< TElastix >, elastix::TransformBendingEnergyPenalty< TElastix >, elastix::GradientDifferenceMetric< TElastix >, elastix::KNNGraphAlphaMutualInformationMetric< TElastix >, elastix::MutualInformationHistogramMetric< TElastix >, elastix::NormalizedGradientCorrelationMetric< TElastix >, elastix::NormalizedMutualInformationMetric< TElastix >, elastix::PatternIntensityMetric< TElastix >, elastix::PCAMetric< TElastix >, elastix::PCAMetric2< TElastix >, elastix::TransformRigidityPenalty< TElastix >, elastix::StatisticalShapePenalty< TElastix >, elastix::SumOfPairwiseCorrelationCoefficientsMetric< TElastix >, elastix::SumSquaredTissueVolumeDifferenceMetric< TElastix >, elastix::VarianceOverLastDimensionMetric< TElastix >, elastix::ViolaWellsMutualInformationMetric< TElastix >, elastix::MovingGenericPyramid< TElastix >, elastix::AdaGrad< TElastix >, elastix::AdaptiveStochasticGradientDescent< TElastix >, elastix::AdaptiveStochasticLBFGS< TElastix >, elastix::AdaptiveStochasticVarianceReducedGradient< TElastix >, elastix::CMAEvolutionStrategy< TElastix >, elastix::ConjugateGradient< TElastix >, elastix::ConjugateGradientFRPR< TElastix >, elastix::FiniteDifferenceGradientDescent< TElastix >, elastix::FullSearch< TElastix >, elastix::Powell< TElastix >, elastix::PreconditionedStochasticGradientDescent< TElastix >, elastix::QuasiNewtonLBFGS< TElastix >, elastix::RegularStepGradientDescent< TElastix >, elastix::RSGDEachParameterApart< TElastix >, elastix::Simplex< TElastix >, elastix::SimultaneousPerturbation< TElastix >, elastix::StandardGradientDescent< TElastix >, elastix::MultiMetricMultiResolutionRegistration< TElastix >, elastix::MultiResolutionRegistration< TElastix >, elastix::MultiResolutionRegistrationWithFeatures< TElastix >, elastix::AdvancedBSplineTransform< TElastix >, elastix::BSplineTransformWithDiffusion< TElastix >, elastix::BSplineStackTransform< TElastix >, elastix::MultiBSplineTransformWithNormal< TElastix >, elastix::RecursiveBSplineTransform< TElastix >, and elastix::ElastixTemplate< TFixedImage, TMovingImage >.
Definition at line 95 of file elxBaseComponent.h.
|
inlinevirtual |
Reimplemented in elastix::OptimizerBase< TElastix >, elastix::FixedImagePyramidBase< TElastix >, elastix::ImageSamplerBase< TElastix >, elastix::MetricBase< TElastix >, and elastix::MovingImagePyramidBase< TElastix >.
Definition at line 83 of file elxBaseComponent.h.
|
inlinevirtual |
Callback methods that each component of elastix is supposed to have. These methods can be overridden in each single component (like MattesMutualInformationMetric) to achieve behavior, specific for that single component.
Reimplemented in elastix::OpenCLFixedGenericPyramid< TElastix >, elastix::OpenCLMovingGenericPyramid< TElastix >, elastix::PreconditionedGradientDescent< TElastix >, elastix::OpenCLResampler< TElastix >, elastix::RayCastInterpolator< TElastix >, elastix::AdvancedKappaStatisticMetric< TElastix >, elastix::CorrespondingPointsEuclideanDistanceMetric< TElastix >, elastix::DistancePreservingRigidityPenalty< TElastix >, elastix::GradientDifferenceMetric< TElastix >, elastix::KNNGraphAlphaMutualInformationMetric< TElastix >, elastix::MissingStructurePenalty< TElastix >, elastix::MutualInformationHistogramMetric< TElastix >, elastix::NormalizedGradientCorrelationMetric< TElastix >, elastix::PatternIntensityMetric< TElastix >, elastix::PolydataDummyPenalty< TElastix >, elastix::TransformRigidityPenalty< TElastix >, elastix::StatisticalShapePenalty< TElastix >, elastix::VarianceOverLastDimensionMetric< TElastix >, elastix::AdaGrad< TElastix >, elastix::AdaptiveStochasticGradientDescent< TElastix >, elastix::AdaptiveStochasticLBFGS< TElastix >, elastix::AdaptiveStochasticVarianceReducedGradient< TElastix >, elastix::CMAEvolutionStrategy< TElastix >, elastix::ConjugateGradient< TElastix >, elastix::ConjugateGradientFRPR< TElastix >, elastix::FiniteDifferenceGradientDescent< TElastix >, elastix::FullSearch< TElastix >, elastix::Powell< TElastix >, elastix::PreconditionedStochasticGradientDescent< TElastix >, elastix::QuasiNewtonLBFGS< TElastix >, elastix::RegularStepGradientDescent< TElastix >, elastix::RSGDEachParameterApart< TElastix >, elastix::Simplex< TElastix >, elastix::SimultaneousPerturbation< TElastix >, elastix::StandardGradientDescent< TElastix >, elastix::MultiMetricMultiResolutionRegistration< TElastix >, elastix::MultiResolutionRegistration< TElastix >, elastix::MultiResolutionRegistrationWithFeatures< TElastix >, elastix::BSplineResampleInterpolator< TElastix >, elastix::BSplineResampleInterpolatorFloat< TElastix >, elastix::RayCastResampleInterpolator< TElastix >, elastix::ReducedDimensionBSplineResampleInterpolator< TElastix >, elastix::AdvancedAffineTransformElastix< TElastix >, elastix::AdvancedBSplineTransform< TElastix >, elastix::AffineDTITransformElastix< TElastix >, elastix::AffineLogStackTransform< TElastix >, elastix::AffineLogTransformElastix< TElastix >, elastix::BSplineTransformWithDiffusion< TElastix >, elastix::BSplineStackTransform< TElastix >, elastix::EulerStackTransform< TElastix >, elastix::EulerTransformElastix< TElastix >, elastix::MultiBSplineTransformWithNormal< TElastix >, elastix::RecursiveBSplineTransform< TElastix >, elastix::SimilarityTransformElastix< TElastix >, elastix::SplineKernelTransform< TElastix >, elastix::TranslationStackTransform< TElastix >, elastix::TranslationTransformElastix< TElastix >, elastix::WeightedCombinationTransformElastix< TElastix >, and elastix::ElastixTemplate< TFixedImage, TMovingImage >.
Definition at line 94 of file elxBaseComponent.h.
|
inlinevirtual |
Callback methods that each component of elastix is supposed to have. These methods can be overridden in each base component (like MetricBase, TransformBase, etc.). In this way similar behavior for a group of components can be implemented.
Reimplemented in elastix::FixedImagePyramidBase< TElastix >, elastix::MovingImagePyramidBase< TElastix >, elastix::ResamplerBase< TElastix >, elastix::TransformBase< TElastix >, and elastix::ElastixBase.
Definition at line 82 of file elxBaseComponent.h.
|
static |
Convenience function to convert seconds to day, hour, minute, second format.
|
virtual |
The name of the component in the ComponentDatabase. Override this function not directly, but with the elxClassNameMacro("name").
const char * elastix::BaseComponent::GetComponentLabel | ( | void | ) | const |
Get the componentlabel as a string: "Metric0" for example.
|
static |
|
static |
elastix::BaseComponent::ITK_DISALLOW_COPY_AND_ASSIGN | ( | BaseComponent | ) |
elastix::BaseComponent::itkTypeMacroNoParent | ( | BaseComponent | ) |
void elastix::BaseComponent::SetComponentLabel | ( | const char * | label, |
unsigned int | idx | ||
) |
Set the component label, which consists of a label ( "Metric", "Transform") and an index number. In case more metrics are used simultaneously each metric will have its own index number. This can be used when reading the parameter file for example, to distinguish between options meant for Metric0 and for Metric1.
|
private |
Definition at line 135 of file elxBaseComponent.h.
Generated on 1667476801 for elastix by 1.9.4 |