FREE::SetupOptimizationOptimizerControllerBase< TControlledOptimizer > Class Template Reference
[Optimizer controllerSetup optimization optimizer]

Derived class of a controller objects for registration optimizers. More...

#include <freSetupOptimizationOptimizerControllerBase.h>

Inheritance diagram for FREE::SetupOptimizationOptimizerControllerBase< TControlledOptimizer >:

Inheritance graph
FREE::ConstrainedOnePlusOneEvolutionarySOOptimizerController\< FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer \>FREE::EvolutionaryStrategySOOptimizerController\< FREE::EvolutionaryStrategySOOptimizer \>FREE::ExhaustiveSOOptimizerController\< FREE::ExhaustiveSOOptimizer \>FREE::OnePlusOneEvolutionarySOOptimizerController\< FREE::OnePlusOneEvolutionarySOOptimizer \>FREE::PowellSOOptimizerController\< FREE::PowellSOOptimizer \>FREE::SPSASOOptimizerController\< FREE::SPSASOOptimizer \>FREE::OptimizerControllerBase\< TControlledOptimizer \>FREE::ComponentControllerBase\< TControlledOptimizer \>FREE::ComponentControllerInterfaceFREE::OptimizerControllerInterface
[legend]
Collaboration diagram for FREE::SetupOptimizationOptimizerControllerBase< TControlledOptimizer >:

Collaboration graph
FREE::OptimizerControllerBase\< TControlledOptimizer \>FREE::ComponentControllerBase\< TControlledOptimizer \>FREE::ComponentControllerInterfaceFREE::CtrlProfile::ProfileInheritanceFREE::XMLStringMultiMapFREE::XMLStreamObjectFREE::OptimizerControllerInterface
[legend]

List of all members.

Public Types

typedef
TControlledOptimizer 
ComponentType
typedef
OptimizerControllerBase
< TControlledOptimizer > 
Superclass
typedef
Superclass::ParametersType 
ParametersType
typedef
Superclass::MeasuresType 
MeasuresType

Public Member Functions

 DeclareParameterMacro (Scales)
 itkTypeMacro (SetupOptimizationOptimizerControllerBase, OptimizerControllerBase)
virtual ParametersType GetCurrentPosition (TControlledOptimizer *pOptimizer) const
virtual MeasuresType GetCurrentValue (TControlledOptimizer *pOptimizer) const

Protected Member Functions

 SetupOptimizationOptimizerControllerBase ()
virtual void GenerateProfile (CtrlProfile::ControllerProfile &profile, const SessionComponentCache *pComponentCache, bool bRegardOldSetup) const
virtual void ActualizeMainComponent (ComponentType *pMainComponent, SessionComponentCache *pComponentCache, SessionInfo *pSessionInfo, const unsigned int &iActLevel) const


Detailed Description

template<class TControlledOptimizer>
class FREE::SetupOptimizationOptimizerControllerBase< TControlledOptimizer >

Derived class of a controller objects for registration optimizers.

Definition at line 37 of file freSetupOptimizationOptimizerControllerBase.h.


Member Typedef Documentation

template<class TControlledOptimizer>
typedef TControlledOptimizer FREE::SetupOptimizationOptimizerControllerBase< TControlledOptimizer >::ComponentType

The component class managed by the controller. The component class must be a derivation from itk::LightObject to ensure the ability to use the smartpointer concept of itk

Reimplemented from FREE::OptimizerControllerBase< TControlledOptimizer >.

Reimplemented in FREE::VnlSetupOptimizationOptimizerControllerBase< TControlledVnlOptimizer >, FREE::AmoebaSOOptimizerController, FREE::ConstrainedOnePlusOneEvolutionarySOOptimizerController, FREE::EvolutionaryStrategySOOptimizerController, FREE::ExhaustiveSOOptimizerController, FREE::LimitedAxisAmoebaSOOptimizerController, FREE::OnePlusOneEvolutionarySOOptimizerController, FREE::PowellSOOptimizerController, FREE::SPSASOOptimizerController, FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::LimitedAxisAmoebaSOOptimizer >, and FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::AmoebaSOOptimizer >.

Definition at line 42 of file freSetupOptimizationOptimizerControllerBase.h.

template<class TControlledOptimizer>
typedef OptimizerControllerBase<TControlledOptimizer> FREE::SetupOptimizationOptimizerControllerBase< TControlledOptimizer >::Superclass

Reimplemented from FREE::OptimizerControllerBase< TControlledOptimizer >.

Reimplemented in FREE::VnlSetupOptimizationOptimizerControllerBase< TControlledVnlOptimizer >, FREE::AmoebaSOOptimizerController, FREE::ConstrainedOnePlusOneEvolutionarySOOptimizerController, FREE::EvolutionaryStrategySOOptimizerController, FREE::ExhaustiveSOOptimizerController, FREE::LimitedAxisAmoebaSOOptimizerController, FREE::OnePlusOneEvolutionarySOOptimizerController, FREE::PowellSOOptimizerController, FREE::SPSASOOptimizerController, FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::LimitedAxisAmoebaSOOptimizer >, and FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::AmoebaSOOptimizer >.

Definition at line 43 of file freSetupOptimizationOptimizerControllerBase.h.

template<class TControlledOptimizer>
typedef Superclass::ParametersType FREE::SetupOptimizationOptimizerControllerBase< TControlledOptimizer >::ParametersType

Reimplemented from FREE::OptimizerControllerBase< TControlledOptimizer >.

Reimplemented in FREE::VnlSetupOptimizationOptimizerControllerBase< TControlledVnlOptimizer >, FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::LimitedAxisAmoebaSOOptimizer >, and FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::AmoebaSOOptimizer >.

Definition at line 46 of file freSetupOptimizationOptimizerControllerBase.h.

template<class TControlledOptimizer>
typedef Superclass::MeasuresType FREE::SetupOptimizationOptimizerControllerBase< TControlledOptimizer >::MeasuresType

Reimplemented from FREE::OptimizerControllerBase< TControlledOptimizer >.

Reimplemented in FREE::VnlSetupOptimizationOptimizerControllerBase< TControlledVnlOptimizer >, FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::LimitedAxisAmoebaSOOptimizer >, and FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::AmoebaSOOptimizer >.

Definition at line 47 of file freSetupOptimizationOptimizerControllerBase.h.


Constructor & Destructor Documentation

template<class TControlledOptimizer>
FREE::SetupOptimizationOptimizerControllerBase< TControlledOptimizer >::SetupOptimizationOptimizerControllerBase (  )  [inline, protected]

Definition at line 45 of file freSetupOptimizationOptimizerControllerBase.txx.

References FREE::ComponentControllerInterface::m_Description, and FREE::ComponentControllerInterface::UpdateControllerID().

Here is the call graph for this function:

FREE::ComponentControllerInterface::UpdateControllerIDFREE::CtrlProfile::ProfileInheritance::AddAncestorFREE::XMLStringMultiMap::AddElementFREE::CtrlProfile::ProfileInheritance::IndexOfAncestorFREE::XMLStringMultiMap::SetElementDataFREE::XMLStringMultiMap::GetElementDataFREE::XMLStringMultiMap::Size


Member Function Documentation

template<class TControlledOptimizer>
FREE::SetupOptimizationOptimizerControllerBase< TControlledOptimizer >::DeclareParameterMacro ( Scales   ) 

template<class TControlledOptimizer>
FREE::SetupOptimizationOptimizerControllerBase< TControlledOptimizer >::itkTypeMacro ( SetupOptimizationOptimizerControllerBase< TControlledOptimizer >  ,
OptimizerControllerBase   
)

template<class TControlledOptimizer>
SetupOptimizationOptimizerControllerBase< TControlledOptimizer >::ParametersType FREE::SetupOptimizationOptimizerControllerBase< TControlledOptimizer >::GetCurrentPosition ( TControlledOptimizer *  pOptimizer  )  const [inline, virtual]

Reimplemented from FREE::OptimizerControllerBase< TControlledOptimizer >.

Reimplemented in FREE::VnlSetupOptimizationOptimizerControllerBase< TControlledVnlOptimizer >, FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::LimitedAxisAmoebaSOOptimizer >, and FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::AmoebaSOOptimizer >.

Definition at line 94 of file freSetupOptimizationOptimizerControllerBase.txx.

template<class TControlledOptimizer>
SetupOptimizationOptimizerControllerBase< TControlledOptimizer >::MeasuresType FREE::SetupOptimizationOptimizerControllerBase< TControlledOptimizer >::GetCurrentValue ( TControlledOptimizer *  pOptimizer  )  const [inline, virtual]

Reimplemented from FREE::OptimizerControllerBase< TControlledOptimizer >.

Reimplemented in FREE::VnlSetupOptimizationOptimizerControllerBase< TControlledVnlOptimizer >, FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::LimitedAxisAmoebaSOOptimizer >, and FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::AmoebaSOOptimizer >.

Definition at line 102 of file freSetupOptimizationOptimizerControllerBase.txx.

template<class TControlledOptimizer>
void FREE::SetupOptimizationOptimizerControllerBase< TControlledOptimizer >::GenerateProfile ( CtrlProfile::ControllerProfile profile,
const SessionComponentCache pComponentCache,
bool  bRegardOldSetup 
) const [inline, protected, virtual]

Adjusts the current profile according to the definitions of the controller.
Method should call the superclass variant to regard demands of basic controllers.

Parameters:
[in,out] profile Reference of the current profile.
[in] pComponentCache Pointer to the cache indicating the location of the component that should be profiled. This pointer can be null. In this case only a default profile that isn't context sensitive is wanted (others aren't possible anyway)
[in] bRegardOldSetup If true, the setup of pComponentCache is valid and should be regarded when the profile is generated. Otherwise just use defaults if setup information is needed.

Reimplemented from FREE::ComponentControllerBase< TControlledOptimizer >.

Reimplemented in FREE::VnlSetupOptimizationOptimizerControllerBase< TControlledVnlOptimizer >, FREE::AmoebaSOOptimizerController, FREE::ConstrainedOnePlusOneEvolutionarySOOptimizerController, FREE::EvolutionaryStrategySOOptimizerController, FREE::ExhaustiveSOOptimizerController, FREE::LimitedAxisAmoebaSOOptimizerController, FREE::OnePlusOneEvolutionarySOOptimizerController, FREE::PowellSOOptimizerController, FREE::SPSASOOptimizerController, FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::LimitedAxisAmoebaSOOptimizer >, and FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::AmoebaSOOptimizer >.

Definition at line 54 of file freSetupOptimizationOptimizerControllerBase.txx.

References FREE::cComp_MainMetric, FREE::cComp_MainTransform, FREE::CtrlProfile::ProfileOption::CheckForInheritance(), FREE::ComponentControllerBase< TControlledOptimizer >::GenerateProfile(), FREE::CtrlProfile::ControllerProfileBase::Inheritance(), FREE::CtrlProfile::ControllerProfileBase::Parameters(), FREE::Parameter::PVTDouble, and FREE::CtrlProfile::ControllerProfile::Requirements().

Referenced by FREE::VnlSetupOptimizationOptimizerControllerBase< TControlledVnlOptimizer >::GenerateProfile(), FREE::LimitedAxisAmoebaSOOptimizerController::GenerateProfile(), and FREE::AmoebaSOOptimizerController::GenerateProfile().

Here is the call graph for this function:

FREE::CtrlProfile::ProfileOption::CheckForInheritanceFREE::ComponentControllerBase\< TControlledOptimizer \>::GenerateProfileFREE::CtrlProfile::ControllerProfileBase::InheritanceFREE::CtrlProfile::ControllerProfileBase::ParametersFREE::CtrlProfile::ControllerProfile::Requirements

template<class TControlledOptimizer>
void FREE::SetupOptimizationOptimizerControllerBase< TControlledOptimizer >::ActualizeMainComponent ( ComponentType pMainComponent,
SessionComponentCache pComponentCache,
SessionInfo pSessionInfo,
const unsigned int &  iActLevel 
) const [inline, protected, virtual]

This function (called by ActualizeComponent()) actualizes the passed component with the setup information considering the actual resolution level of the ongoing registration. In a derived class this function should be overridden to provide a specific behavior.

Parameters:
[in,out] pMainComponent Pointer to the main component. Can also be retrieved via component cache, but offered directly and already casted for more convenience.
[in,out] pComponentCache Pointer to the component cache that should be actualized.
[in] pSessionInfo Pointer to the session info.
[in] iActLevel Indicates which layer of a parameter should be used, if the parameter is layer sensitive (e.g. as resolution level of a registration). Default is 0.

Reimplemented from FREE::ComponentControllerBase< TControlledOptimizer >.

Reimplemented in FREE::VnlSetupOptimizationOptimizerControllerBase< TControlledVnlOptimizer >, FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::LimitedAxisAmoebaSOOptimizer >, and FREE::VnlSetupOptimizationOptimizerControllerBase< FREE::AmoebaSOOptimizer >.

Definition at line 74 of file freSetupOptimizationOptimizerControllerBase.txx.

References FREE::ComponentControllerBase< TControlledOptimizer >::ActualizeMainComponent(), FREE::ParameterCollection::GetParameter(), FREE::Parameter::GetParameterLayer(), FREE::ComponentSetup::Parameters(), FREE::SessionComponentCache::Setup(), and throwExceptionMacro.

Referenced by FREE::VnlSetupOptimizationOptimizerControllerBase< TControlledVnlOptimizer >::ActualizeMainComponent(), FREE::LimitedAxisAmoebaSOOptimizerController::ActualizeMainComponent(), and FREE::AmoebaSOOptimizerController::ActualizeMainComponent().

Here is the call graph for this function:

FREE::ComponentControllerBase\< TControlledOptimizer \>::ActualizeMainComponentFREE::ParameterCollection::GetParameterFREE::Parameter::GetParameterLayerFREE::ComponentSetup::ParametersFREE::SessionComponentCache::SetupFREE::ParameterCollection::GetParameterIndexFREE::Parameter::LayerCount


The documentation for this class was generated from the following files:
Generated at Sat Oct 13 18:17:43 2007 for f.r.e.e. - Flexible Registration and Evaluation Engine by doxygen 1.5.3 written by Dimitri van Heesch, © 1997-2000