FREE::ExhaustiveOptimizerController Class Reference
[Optimizer controller]

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

#include <freExhaustiveOptimizerController.h>

Inheritance diagram for FREE::ExhaustiveOptimizerController:

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

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

List of all members.

Public Types

typedef
itk::ExhaustiveOptimizer 
ComponentType
typedef
SVNonLinearOptimizerControllerBase
< ComponentType
Superclass

Public Member Functions

 itkTypeMacro (ExhaustiveOptimizerController, SVNonLinearOptimizerControllerBase)
 DeclareParameterMacro (StepLength) DeclareParameterMacro(NumberOfSteps) virtual MeasuresType GetCurrentValue(ComponentType *pOptimizer) const
 ExhaustiveOptimizerController ()
virtual ~ExhaustiveOptimizerController ()

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


Detailed Description

Derived class of a controller objects for optimizers.

ExhaustiveOptimizerController is derived from OptimizerControllerBase and the class for the control of gradient descent optimizer. The class uses the itk::ExhaustiveOptimizer

Definition at line 42 of file freExhaustiveOptimizerController.h.


Member Typedef Documentation

typedef itk::ExhaustiveOptimizer FREE::ExhaustiveOptimizerController::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::ExhaustiveOptimizer >.

Definition at line 47 of file freExhaustiveOptimizerController.h.

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

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

Definition at line 48 of file freExhaustiveOptimizerController.h.


Constructor & Destructor Documentation

FREE::ExhaustiveOptimizerController::ExhaustiveOptimizerController (  ) 

Definition at line 37 of file freExhaustiveOptimizerController.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

FREE::ExhaustiveOptimizerController::~ExhaustiveOptimizerController (  )  [virtual]

Definition at line 58 of file freExhaustiveOptimizerController.cxx.


Member Function Documentation

FREE::ExhaustiveOptimizerController::itkTypeMacro ( ExhaustiveOptimizerController  ,
SVNonLinearOptimizerControllerBase   
)

FREE::ExhaustiveOptimizerController::DeclareParameterMacro ( StepLength   )  const

void FREE::ExhaustiveOptimizerController::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::ExhaustiveOptimizer >.

Definition at line 46 of file freExhaustiveOptimizerController.cxx.

References FREE::SVNonLinearOptimizerControllerBase< TControlledOptimizer >::GenerateProfile(), FREE::CtrlProfile::ControllerProfileBase::Parameters(), FREE::Parameter::PVTDouble, 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::ExhaustiveOptimizerController::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::ExhaustiveOptimizer >.

Definition at line 64 of file freExhaustiveOptimizerController.cxx.

References catchAllNPassMacro, FREE::SessionAccessor::GetParameter(), FREE::SessionAccessor::GetParameterValue(), FREE::OptimizerControllerBase< itk::ExhaustiveOptimizer >::GetTransformScales(), and throwCtrlExceptionMacro.

Here is the call graph for this function:

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

void FREE::ExhaustiveOptimizerController::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::ExhaustiveOptimizer >.

Definition at line 93 of file freExhaustiveOptimizerController.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


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