FREE::SPSAOptimizerController Class Reference
[Optimizer controller]

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

#include <freSPSAOptimizerController.h>

Inheritance diagram for FREE::SPSAOptimizerController:

Inheritance graph
FREE::SVNonLinearOptimizerControllerBase\< itk::SPSAOptimizer \>FREE::OptimizerControllerBase\< itk::SPSAOptimizer \>FREE::ComponentControllerBase\< itk::SPSAOptimizer \>FREE::ComponentControllerInterfaceFREE::OptimizerControllerInterface
[legend]
Collaboration diagram for FREE::SPSAOptimizerController:

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

List of all members.

Public Types

typedef
itk::SPSAOptimizer 
ComponentType
typedef
SVNonLinearOptimizerControllerBase
< ComponentType
Superclass

Public Member Functions

 itkTypeMacro (SPSAOptimizerController, SVNonLinearOptimizerControllerBase)
 DeclareParameterMacro (MinimumNumberOfIteration)
 DeclareParameterMacro (MaximumNumberOfIteration)
 DeclareParameterMacro (a)
 DeclareParameterMacro (A)
 DeclareParameterMacro (c)
 DeclareParameterMacro (Alpha)
 DeclareParameterMacro (Gamma)
 DeclareParameterMacro (NumberOfPertubations)
 DeclareParameterMacro (ConvergenceDecayRate)
 DeclareParameterMacro (Tolerance)
 DeclareParameterMacro (GuessParameters)
 DeclareParameterMacro (Guess_GradientEstimates)
 DeclareParameterMacro (Guess_InitialStepSize)
virtual MeasuresType GetCurrentValue (ComponentType *pOptimizer) const
 SPSAOptimizerController ()

Protected Member Functions

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
virtual void SetStatisticEntryMainComponent (StatisticEntry &rStatisticEntry, ComponentType *pMainComponent, SessionComponentCache *pMainComponentCache, SessionInfo *pSessionInfo, StatisticDictionary &rDictionary) const
virtual void ActualizeFinalization (ComponentType *pMainComponent, SessionComponentCache *pComponentCache, SessionInfo *pSessionInfo, const unsigned int &iActLevel) const


Detailed Description

Derived class of a controller objects for optimizers.

SPSAOptimizerController is derived from OptimizerControllerBase and the class for the control of the class itk::SPSAOptimizer.

Definition at line 42 of file freSPSAOptimizerController.h.


Member Typedef Documentation

typedef itk::SPSAOptimizer FREE::SPSAOptimizerController::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::SVNonLinearOptimizerControllerBase< itk::SPSAOptimizer >.

Definition at line 47 of file freSPSAOptimizerController.h.

typedef SVNonLinearOptimizerControllerBase<ComponentType> FREE::SPSAOptimizerController::Superclass

Reimplemented from FREE::SVNonLinearOptimizerControllerBase< itk::SPSAOptimizer >.

Definition at line 48 of file freSPSAOptimizerController.h.


Constructor & Destructor Documentation

FREE::SPSAOptimizerController::SPSAOptimizerController (  ) 

Definition at line 49 of file freSPSAOptimizerController.cxx.

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

FREE::SPSAOptimizerController::itkTypeMacro ( SPSAOptimizerController  ,
SVNonLinearOptimizerControllerBase   
)

FREE::SPSAOptimizerController::DeclareParameterMacro ( MinimumNumberOfIteration   ) 

FREE::SPSAOptimizerController::DeclareParameterMacro ( MaximumNumberOfIteration   ) 

FREE::SPSAOptimizerController::DeclareParameterMacro (  ) 

FREE::SPSAOptimizerController::DeclareParameterMacro (  ) 

FREE::SPSAOptimizerController::DeclareParameterMacro (  ) 

FREE::SPSAOptimizerController::DeclareParameterMacro ( Alpha   ) 

FREE::SPSAOptimizerController::DeclareParameterMacro ( Gamma   ) 

FREE::SPSAOptimizerController::DeclareParameterMacro ( NumberOfPertubations   ) 

FREE::SPSAOptimizerController::DeclareParameterMacro ( ConvergenceDecayRate   ) 

FREE::SPSAOptimizerController::DeclareParameterMacro ( Tolerance   ) 

FREE::SPSAOptimizerController::DeclareParameterMacro ( GuessParameters   ) 

FREE::SPSAOptimizerController::DeclareParameterMacro ( Guess_GradientEstimates   ) 

FREE::SPSAOptimizerController::DeclareParameterMacro ( Guess_InitialStepSize   ) 

SPSAOptimizerController::MeasuresType FREE::SPSAOptimizerController::GetCurrentValue ( ComponentType pOptimizer  )  const [virtual]

Implements FREE::SVNonLinearOptimizerControllerBase< itk::SPSAOptimizer >.

Definition at line 193 of file freSPSAOptimizerController.cxx.

void FREE::SPSAOptimizerController::GenerateProfile ( CtrlProfile::ControllerProfile profile,
const SessionComponentCache pComponentCache,
bool  bRegardOldSetup 
) const [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::SVNonLinearOptimizerControllerBase< itk::SPSAOptimizer >.

Definition at line 59 of file freSPSAOptimizerController.cxx.

References FREE::SVNonLinearOptimizerControllerBase< TControlledOptimizer >::GenerateProfile(), FREE::CtrlProfile::ControllerProfileBase::Parameters(), FREE::Parameter::PVTBool, FREE::Parameter::PVTDouble, FREE::Parameter::PVTLong, and FREE::Parameter::PVTULong.

Here is the call graph for this function:

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

void FREE::SPSAOptimizerController::ActualizeMainComponent ( ComponentType pMainComponent,
SessionComponentCache pComponentCache,
SessionInfo pSessionInfo,
const unsigned int &  iActLevel 
) const [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< itk::SPSAOptimizer >.

Definition at line 83 of file freSPSAOptimizerController.cxx.

References catchAllNPassMacro, FREE::SessionComponentCache::Controller(), FREE::ComponentControllerInterface::GetParameter(), FREE::SessionAccessor::GetParameterValue(), FREE::SessionComponentCache::GetParentCache(), FREE::OptimizerControllerBase< itk::SPSAOptimizer >::GetTransformScales(), and throwCtrlExceptionMacro.

Here is the call graph for this function:

FREE::SessionComponentCache::ControllerFREE::ComponentControllerInterface::GetParameterFREE::SessionAccessor::GetParameterValueFREE::SessionComponentCache::GetParentCacheFREE::OptimizerControllerBase\< itk::SPSAOptimizer \>::GetTransformScalesFREE::SessionComponentCache::GetIDPathFREE::SessionAccessor::GetParameterFREE::IDPath::ToStrFREE::ComponentSetup::GetIDPathFREE::SessionComponentCache::SetupFREE::ComponentSetup::HasParentComponentFREE::SessionComponentCache::ControllerIsAssignedFREE::IDPath::Size

void FREE::SPSAOptimizerController::SetStatisticEntryMainComponent ( StatisticEntry rStatisticEntry,
ComponentType pMainComponent,
SessionComponentCache pMainComponentCache,
SessionInfo pSessionInfo,
StatisticDictionary rDictionary 
) const [protected, virtual]

This function (called by SetStatisticEntry()) records any statistical information of the passed component In a derived class this function should be overridden to provide a specific behavior.

Parameters:
[in,out] rStatisticEntry reference to the Statistic object, where the relevant information should be stored.
[in] pMainComponent Pointer to the casted component. Also available via cache, but already casted for convenience.
[in] pMainComponentCache Pointer to the component cache.
[in] pSessionInfo Pointer to the session info
[in,out] rDictionary Dictionary with information about the stored facts (e.g. Type, Name) The entry in the dictionary should set by the controller if needed.

Reimplemented from FREE::ComponentControllerBase< itk::SPSAOptimizer >.

Definition at line 136 of file freSPSAOptimizerController.cxx.

References FREE::StatisticEntry::AddValue(), FREE::StatisticDictionary::AddValueDefinition(), FREE::SessionComponentCache::GetIDPath(), FREE::StatisticValueDefinition::GetRefID(), FREE::StatisticDictionary::GetValueDefinitionByName(), FREE::OptimizerControllerBase< TControlledOptimizer >::SetStatisticEntryMainComponent(), and FREE::Convert::ToStr().

Here is the call graph for this function:

FREE::StatisticEntry::AddValueFREE::StatisticDictionary::AddValueDefinitionFREE::SessionComponentCache::GetIDPathFREE::StatisticValueDefinition::GetRefIDFREE::StatisticDictionary::GetValueDefinitionByNameFREE::OptimizerControllerBase::SetStatisticEntryMainComponentFREE::Convert::ToStrFREE::SmartCollectionBase::AddElementFREE::SmartCollectionBase::GetElementFREE::CollectionBase::SizeFREE::ComponentSetup::GetIDPathFREE::SessionComponentCache::SetupFREE::ComponentSetup::HasParentComponent

void FREE::SPSAOptimizerController::ActualizeFinalization ( ComponentType pMainComponent,
SessionComponentCache pComponentCache,
SessionInfo pSessionInfo,
const unsigned int &  iActLevel 
) const [protected, virtual]

This function (called by ActualizeComponent()) does any finalization work needed after the main and all subcomponents have been actualized.
In a derived class this function should be overridden if any behavior has to be implemented.

Parameters:
[in,out] pMainComponent Pointer to the main component.
[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< itk::SPSAOptimizer >.

Definition at line 166 of file freSPSAOptimizerController.cxx.

References catchAllNPassMacro, FREE::SessionAccessor::GetParameterValue(), FREE::SessionComponentCache::Setup(), FREE::SessionComponentCache::SetupIsAssigned(), and throwCtrlExceptionMacro.

Here is the call graph for this function:

FREE::SessionAccessor::GetParameterValueFREE::SessionComponentCache::SetupFREE::SessionComponentCache::SetupIsAssignedFREE::SessionComponentCache::GetIDPathFREE::SessionAccessor::GetParameterFREE::IDPath::ToStrFREE::ComponentSetup::GetIDPathFREE::ComponentSetup::HasParentComponentFREE::SessionComponentCache::ControllerFREE::SessionComponentCache::ControllerIsAssignedFREE::ComponentControllerInterface::GetParameterFREE::IDPath::Size


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