FREE::AccuracySOMetricThread< VImageDimension > Class Template Reference
[Setup optimization metric]

This class is a computation thread of AccuracySOMetric. More...

#include <freAccuracySOMetricThread.h>

Inheritance diagram for FREE::AccuracySOMetricThread< VImageDimension >:

Inheritance graph
FREE::SetupOptimizationMetricThreadBase\< FREE::AccuracySOMetricMonitor \>
[legend]
Collaboration diagram for FREE::AccuracySOMetricThread< VImageDimension >:

Collaboration graph
FREE::SetupOptimizationMetricThreadBase\< FREE::AccuracySOMetricMonitor \>FREE::IDPathFREE::XMLStreamObject
[legend]

List of all members.

Public Types

typedef
AccuracySOMetricThread
< VImageDimension > 
Self
typedef
SetupOptimizationMetricThreadBase
< AccuracySOMetricMonitor
Superclass
typedef
itk::SmartPointer
< Self
Pointer
typedef
itk::SmartPointer
< const Self
ConstPointer
typedef
Superclass::ThreadIDType 
ThreadIDType
typedef
Superclass::MonitorType 
MonitorType
typedef
Superclass::ResultType 
ResultType

Public Member Functions

virtual const char * GetNameOfClass () const
virtual
::itk::LightObject::Pointer 
CreateAnother (void) const
void SetResultFieldPath (const IDPath &path)
const IDPathGetResultFieldPath () const
void SetReferenceFieldPath (const IDPath &path)
const IDPathGetReferenceFieldPath () const
void SetReferencePointsPath (const IDPath &path)
const IDPathGetReferencePointsPath () const
void SetMovingPointsPath (const IDPath &path)
const IDPathGetMovingPointsPath () const
void SetUseField (const bool &bUseField)
bool GetUseField () const

Static Public Member Functions

static Pointer New (void)

Protected Types

typedef ImageTypes
< VImageDimension >
::TransformationFieldType 
TransformationFieldType

Protected Member Functions

 AccuracySOMetricThread ()
virtual ~AccuracySOMetricThread ()
virtual bool ProcessSetup (Setup *pAdaptationSetup) throw ()
void EvaluateField (TransformationFieldType *pResultField, SessionInfo *pSessionInfo)
void EvaluatePoints (TransformationFieldType *pResultField, SessionInfo *pSessionInfo)

Protected Attributes

IDPath m_ResultFieldPath
IDPath m_ReferenceFieldPath
IDPath m_ReferencePointsPath
IDPath m_MovingPointsPath
bool m_UseField

Private Member Functions

 AccuracySOMetricThread (const Self &)
void operator= (const Self &)


Detailed Description

template<unsigned int VImageDimension>
class FREE::AccuracySOMetricThread< VImageDimension >

This class is a computation thread of AccuracySOMetric.

AccuracySOMetricThread is used by AccuracySOMetric to evaluate singel adaptations and return the results via AccuracySOMetricMonitor.

Definition at line 44 of file freAccuracySOMetricThread.h.


Member Typedef Documentation

template<unsigned int VImageDimension>
typedef AccuracySOMetricThread<VImageDimension> FREE::AccuracySOMetricThread< VImageDimension >::Self

Standard class typedefs.

Reimplemented from FREE::SetupOptimizationMetricThreadBase< TMonitor >.

Definition at line 49 of file freAccuracySOMetricThread.h.

template<unsigned int VImageDimension>
typedef SetupOptimizationMetricThreadBase<AccuracySOMetricMonitor> FREE::AccuracySOMetricThread< VImageDimension >::Superclass

Reimplemented from FREE::SetupOptimizationMetricThreadBase< TMonitor >.

Definition at line 50 of file freAccuracySOMetricThread.h.

template<unsigned int VImageDimension>
typedef itk::SmartPointer<Self> FREE::AccuracySOMetricThread< VImageDimension >::Pointer

Reimplemented from FREE::SetupOptimizationMetricThreadBase< TMonitor >.

Definition at line 51 of file freAccuracySOMetricThread.h.

template<unsigned int VImageDimension>
typedef itk::SmartPointer<const Self> FREE::AccuracySOMetricThread< VImageDimension >::ConstPointer

Reimplemented from FREE::SetupOptimizationMetricThreadBase< TMonitor >.

Definition at line 52 of file freAccuracySOMetricThread.h.

template<unsigned int VImageDimension>
typedef Superclass::ThreadIDType FREE::AccuracySOMetricThread< VImageDimension >::ThreadIDType

Reimplemented from FREE::SetupOptimizationMetricThreadBase< TMonitor >.

Definition at line 54 of file freAccuracySOMetricThread.h.

template<unsigned int VImageDimension>
typedef Superclass::MonitorType FREE::AccuracySOMetricThread< VImageDimension >::MonitorType

Reimplemented from FREE::SetupOptimizationMetricThreadBase< TMonitor >.

Definition at line 55 of file freAccuracySOMetricThread.h.

template<unsigned int VImageDimension>
typedef Superclass::ResultType FREE::AccuracySOMetricThread< VImageDimension >::ResultType

Class containing the results of one adaptation evaluation /*depends on the monitored metric and therefore a template.

Reimplemented from FREE::SetupOptimizationMetricThreadBase< TMonitor >.

Definition at line 56 of file freAccuracySOMetricThread.h.

template<unsigned int VImageDimension>
typedef ImageTypes<VImageDimension>::TransformationFieldType FREE::AccuracySOMetricThread< VImageDimension >::TransformationFieldType [protected]

Definition at line 85 of file freAccuracySOMetricThread.h.


Constructor & Destructor Documentation

template<unsigned int VImageDimension>
FREE::AccuracySOMetricThread< VImageDimension >::AccuracySOMetricThread (  )  [inline, protected]

Definition at line 117 of file freAccuracySOMetricThread.txx.

References FREE::AccuracySOMetricThread< VImageDimension >::m_MovingPointsPath, FREE::AccuracySOMetricThread< VImageDimension >::m_ReferenceFieldPath, FREE::AccuracySOMetricThread< VImageDimension >::m_ReferencePointsPath, FREE::AccuracySOMetricThread< VImageDimension >::m_ResultFieldPath, FREE::AccuracySOMetricThread< VImageDimension >::m_UseField, and FREE::IDPath::Reset().

Here is the call graph for this function:

FREE::IDPath::Reset

template<unsigned int VImageDimension>
FREE::AccuracySOMetricThread< VImageDimension >::~AccuracySOMetricThread (  )  [inline, protected, virtual]

Definition at line 128 of file freAccuracySOMetricThread.txx.

template<unsigned int VImageDimension>
FREE::AccuracySOMetricThread< VImageDimension >::AccuracySOMetricThread ( const Self  )  [private]


Member Function Documentation

template<unsigned int VImageDimension>
virtual const char* FREE::AccuracySOMetricThread< VImageDimension >::GetNameOfClass (  )  const [inline, virtual]

Run-time type information (and related methods).

Reimplemented from FREE::SetupOptimizationMetricThreadBase< TMonitor >.

Definition at line 59 of file freAccuracySOMetricThread.h.

template<unsigned int VImageDimension>
static Pointer FREE::AccuracySOMetricThread< VImageDimension >::New ( void   )  [inline, static]

Definition at line 60 of file freAccuracySOMetricThread.h.

template<unsigned int VImageDimension>
virtual ::itk::LightObject::Pointer FREE::AccuracySOMetricThread< VImageDimension >::CreateAnother ( void   )  const [inline, virtual]

Definition at line 60 of file freAccuracySOMetricThread.h.

template<unsigned int VImageDimension>
void FREE::AccuracySOMetricThread< VImageDimension >::SetResultFieldPath ( const IDPath path  )  [inline]

Definition at line 43 of file freAccuracySOMetricThread.txx.

References FREE::SetupOptimizationMetricThreadBase< TMonitor >::LockExecutionMutex(), FREE::AccuracySOMetricThread< VImageDimension >::m_ResultFieldPath, and FREE::SetupOptimizationMetricThreadBase< TMonitor >::UnlockExecutionMutex().

Here is the call graph for this function:

FREE::SetupOptimizationMetricThreadBase::LockExecutionMutexFREE::SetupOptimizationMetricThreadBase::UnlockExecutionMutex

template<unsigned int VImageDimension>
const IDPath & FREE::AccuracySOMetricThread< VImageDimension >::GetResultFieldPath (  )  const [inline]

Definition at line 53 of file freAccuracySOMetricThread.txx.

References FREE::AccuracySOMetricThread< VImageDimension >::m_ResultFieldPath.

template<unsigned int VImageDimension>
void FREE::AccuracySOMetricThread< VImageDimension >::SetReferenceFieldPath ( const IDPath path  )  [inline]

Definition at line 58 of file freAccuracySOMetricThread.txx.

References FREE::SetupOptimizationMetricThreadBase< TMonitor >::LockExecutionMutex(), FREE::AccuracySOMetricThread< VImageDimension >::m_ReferenceFieldPath, and FREE::SetupOptimizationMetricThreadBase< TMonitor >::UnlockExecutionMutex().

Here is the call graph for this function:

FREE::SetupOptimizationMetricThreadBase::LockExecutionMutexFREE::SetupOptimizationMetricThreadBase::UnlockExecutionMutex

template<unsigned int VImageDimension>
const IDPath & FREE::AccuracySOMetricThread< VImageDimension >::GetReferenceFieldPath (  )  const [inline]

Definition at line 68 of file freAccuracySOMetricThread.txx.

References FREE::AccuracySOMetricThread< VImageDimension >::m_ReferenceFieldPath.

template<unsigned int VImageDimension>
void FREE::AccuracySOMetricThread< VImageDimension >::SetReferencePointsPath ( const IDPath path  )  [inline]

Definition at line 73 of file freAccuracySOMetricThread.txx.

References FREE::SetupOptimizationMetricThreadBase< TMonitor >::LockExecutionMutex(), FREE::AccuracySOMetricThread< VImageDimension >::m_ReferencePointsPath, and FREE::SetupOptimizationMetricThreadBase< TMonitor >::UnlockExecutionMutex().

Here is the call graph for this function:

FREE::SetupOptimizationMetricThreadBase::LockExecutionMutexFREE::SetupOptimizationMetricThreadBase::UnlockExecutionMutex

template<unsigned int VImageDimension>
const IDPath & FREE::AccuracySOMetricThread< VImageDimension >::GetReferencePointsPath (  )  const [inline]

Definition at line 83 of file freAccuracySOMetricThread.txx.

References FREE::AccuracySOMetricThread< VImageDimension >::m_ReferencePointsPath.

template<unsigned int VImageDimension>
void FREE::AccuracySOMetricThread< VImageDimension >::SetMovingPointsPath ( const IDPath path  )  [inline]

Definition at line 88 of file freAccuracySOMetricThread.txx.

References FREE::SetupOptimizationMetricThreadBase< TMonitor >::LockExecutionMutex(), FREE::AccuracySOMetricThread< VImageDimension >::m_MovingPointsPath, and FREE::SetupOptimizationMetricThreadBase< TMonitor >::UnlockExecutionMutex().

Here is the call graph for this function:

FREE::SetupOptimizationMetricThreadBase::LockExecutionMutexFREE::SetupOptimizationMetricThreadBase::UnlockExecutionMutex

template<unsigned int VImageDimension>
const IDPath & FREE::AccuracySOMetricThread< VImageDimension >::GetMovingPointsPath (  )  const [inline]

Definition at line 98 of file freAccuracySOMetricThread.txx.

References FREE::AccuracySOMetricThread< VImageDimension >::m_MovingPointsPath.

template<unsigned int VImageDimension>
void FREE::AccuracySOMetricThread< VImageDimension >::SetUseField ( const bool &  bUseField  )  [inline]

Definition at line 103 of file freAccuracySOMetricThread.txx.

References FREE::SetupOptimizationMetricThreadBase< TMonitor >::LockExecutionMutex(), FREE::AccuracySOMetricThread< VImageDimension >::m_UseField, and FREE::SetupOptimizationMetricThreadBase< TMonitor >::UnlockExecutionMutex().

Here is the call graph for this function:

FREE::SetupOptimizationMetricThreadBase::LockExecutionMutexFREE::SetupOptimizationMetricThreadBase::UnlockExecutionMutex

template<unsigned int VImageDimension>
bool FREE::AccuracySOMetricThread< VImageDimension >::GetUseField (  )  const [inline]

Definition at line 113 of file freAccuracySOMetricThread.txx.

References FREE::AccuracySOMetricThread< VImageDimension >::m_UseField.

template<unsigned int VImageDimension>
bool FREE::AccuracySOMetricThread< VImageDimension >::ProcessSetup ( Setup pAdaptationSetup  )  throw () [inline, protected, virtual]

This method should be implemented in derived classes. The method processes the passed adaptation setup. Returns false if the evaluation fails for any reason. In this case m_FailureComment should contain the reason for the failure. If Evaluation was successful the return is true, m_Results should then contain the results of the evaluation. The function itself should throw no exceptions.

Parameters:
[in] pAdaptationSetup Pointer to the setup that should be evaluated.
Returns:
True if evaluation was sucessfull.

Implements FREE::SetupOptimizationMetricThreadBase< TMonitor >.

Definition at line 133 of file freAccuracySOMetricThread.txx.

References FREE::ControllerCentral::AddOnProgressEvent(), FREE::SessionProcessor::DefineOutput(), FREE::AccuracySOMetricThread< VImageDimension >::EvaluateField(), FREE::AccuracySOMetricThread< VImageDimension >::EvaluatePoints(), FREE::SessionProcessor::GetCastedOutput(), FREE::SessionInfo::GetSessionCache(), FREE::SessionProcessor::GetSessionInfo(), FREE::SessionProcessor::InitializeSession(), FREE::SetupOptimizationMetricThreadBase< TMonitor >::m_EvaluatedSessionProgressEvent, FREE::SetupOptimizationMetricThreadBase< TMonitor >::m_FailureComment, FREE::SetupOptimizationMetricThreadBase< TMonitor >::m_Results, FREE::AccuracySOMetricThread< VImageDimension >::m_UseField, FREE::ControllerCentral::RemoveOnProgressEvent(), and FREE::SessionProcessor::SetSetup().

Here is the call graph for this function:

FREE::ControllerCentral::AddOnProgressEventFREE::SessionProcessor::DefineOutputFREE::AccuracySOMetricThread::EvaluateFieldFREE::AccuracySOMetricThread::EvaluatePointsFREE::SessionProcessor::GetCastedOutputFREE::SessionInfo::GetSessionCacheFREE::SessionProcessor::GetSessionInfoFREE::SessionProcessor::InitializeSessionFREE::ControllerCentral::RemoveOnProgressEventFREE::SessionProcessor::SetSetupFREE::SessionAccessor::GetMediaFREE::IDPath::IsEmptyFREE::IDPath::ToStrFREE::SessionComponentCache::ControllerFREE::SessionInfo::GetCacheByIDPathFREE::ComponentControllerInterface::GetMediaFREE::IDPath::GetMediaIDFREE::IDPath::GetParentComponentIDPathFREE::IDPath::IsMediaSelectionFREE::SessionComponentCache::IsActiveFREE::IDPath::GetParentIDPathFREE::IDPath::IsComponentSelectionFREE::IDPath::AssembleIDPathFREE::IDPath::SetAbsoluteFREE::IDPath::SizeFREE::IDPath::IsParameterSelectionFREE::SessionProcessor::GetOutputFREE::SessionBuilder::BuildSessionFREE::SessionProcessor::ResetSessionFREE::SessionBuilder::BuildComponentFREE::ControllerCentral::TriggerBuildEventFREE::Setup::GetSectionsFREE::SessionInfo::NewFREE::ComponentControllerInterface::BuildSetupFREE::SessionBuilder::CheckComponentNecessityFREE::ComponentSetup::GetComponentIDFREE::ComponentSetup::ControllerIsAssignedFREE::ComponentSetup::GetControllerIDFREE::ControllerCentral::GetControllerFREE::ComponentSetup::GetIDPathFREE::SessionComponentCache::NewFREE::SessionComponentCache::GetComponentIDFREE::SessionComponentCache::GetParentCacheFREE::SessionComponentCache::SetupIsAssignedFREE::ControllerInfo::GetControllerFREE::ControllerCentral::GetControllerInfoFREE::ComponentSetup::HasParentComponentFREE::SessionInfo::SessionInfoFREE::SessionInfo::SetSetup

template<unsigned int VImageDimension>
void FREE::AccuracySOMetricThread< VImageDimension >::EvaluateField ( TransformationFieldType pResultField,
SessionInfo pSessionInfo 
) [inline, protected]

Evaluates mean error and variance of a computed transformation field compared with a a reference field provided by the session

Definition at line 188 of file freAccuracySOMetricThread.txx.

References catchAllNPassMacro, FREE::SessionAccessor::GetMedia(), FREE::IDPath::IsEmpty(), FREE::AccuracySOMetricThread< VImageDimension >::m_ReferenceFieldPath, FREE::SetupOptimizationMetricThreadBase< TMonitor >::m_Results, throwExceptionMacro, and FREE::IDPath::ToStr().

Referenced by FREE::AccuracySOMetricThread< VImageDimension >::ProcessSetup().

Here is the call graph for this function:

FREE::SessionAccessor::GetMediaFREE::IDPath::IsEmptyFREE::IDPath::ToStrFREE::SessionComponentCache::ControllerFREE::SessionInfo::GetCacheByIDPathFREE::ComponentControllerInterface::GetMediaFREE::IDPath::GetMediaIDFREE::IDPath::GetParentComponentIDPathFREE::IDPath::IsMediaSelectionFREE::SessionComponentCache::IsActiveFREE::IDPath::GetParentIDPathFREE::IDPath::IsComponentSelectionFREE::IDPath::AssembleIDPathFREE::IDPath::SizeFREE::IDPath::SetAbsoluteFREE::IDPath::AddComponentFREE::IDPath::GetComponentFREE::IDPath::IsParameterSelection

template<unsigned int VImageDimension>
void FREE::AccuracySOMetricThread< VImageDimension >::EvaluatePoints ( TransformationFieldType pResultField,
SessionInfo pSessionInfo 
) [inline, protected]

Evaluates the error of given moving points compared to reference points provided by the session. To compare the points the passed transformation field will be used.

Definition at line 246 of file freAccuracySOMetricThread.txx.

References catchAllNPassMacro, FREE::SessionAccessor::GetMedia(), FREE::IDPath::IsEmpty(), FREE::AccuracySOMetricThread< VImageDimension >::m_MovingPointsPath, FREE::AccuracySOMetricThread< VImageDimension >::m_ReferenceFieldPath, FREE::AccuracySOMetricThread< VImageDimension >::m_ReferencePointsPath, FREE::SetupOptimizationMetricThreadBase< TMonitor >::m_Results, throwExceptionMacro, and FREE::IDPath::ToStr().

Referenced by FREE::AccuracySOMetricThread< VImageDimension >::ProcessSetup().

Here is the call graph for this function:

FREE::SessionAccessor::GetMediaFREE::IDPath::IsEmptyFREE::IDPath::ToStrFREE::SessionComponentCache::ControllerFREE::SessionInfo::GetCacheByIDPathFREE::ComponentControllerInterface::GetMediaFREE::IDPath::GetMediaIDFREE::IDPath::GetParentComponentIDPathFREE::IDPath::IsMediaSelectionFREE::SessionComponentCache::IsActiveFREE::IDPath::GetParentIDPathFREE::IDPath::IsComponentSelectionFREE::IDPath::AssembleIDPathFREE::IDPath::SizeFREE::IDPath::SetAbsoluteFREE::IDPath::AddComponentFREE::IDPath::GetComponentFREE::IDPath::IsParameterSelection

template<unsigned int VImageDimension>
void FREE::AccuracySOMetricThread< VImageDimension >::operator= ( const Self  )  [private]


Member Data Documentation

template<unsigned int VImageDimension>
IDPath FREE::AccuracySOMetricThread< VImageDimension >::m_ResultFieldPath [protected]

Definition at line 94 of file freAccuracySOMetricThread.h.

Referenced by FREE::AccuracySOMetricThread< VImageDimension >::AccuracySOMetricThread(), FREE::AccuracySOMetricThread< VImageDimension >::GetResultFieldPath(), and FREE::AccuracySOMetricThread< VImageDimension >::SetResultFieldPath().

template<unsigned int VImageDimension>
IDPath FREE::AccuracySOMetricThread< VImageDimension >::m_ReferenceFieldPath [protected]

Definition at line 95 of file freAccuracySOMetricThread.h.

Referenced by FREE::AccuracySOMetricThread< VImageDimension >::AccuracySOMetricThread(), FREE::AccuracySOMetricThread< VImageDimension >::EvaluateField(), FREE::AccuracySOMetricThread< VImageDimension >::EvaluatePoints(), FREE::AccuracySOMetricThread< VImageDimension >::GetReferenceFieldPath(), and FREE::AccuracySOMetricThread< VImageDimension >::SetReferenceFieldPath().

template<unsigned int VImageDimension>
IDPath FREE::AccuracySOMetricThread< VImageDimension >::m_ReferencePointsPath [protected]

Definition at line 96 of file freAccuracySOMetricThread.h.

Referenced by FREE::AccuracySOMetricThread< VImageDimension >::AccuracySOMetricThread(), FREE::AccuracySOMetricThread< VImageDimension >::EvaluatePoints(), FREE::AccuracySOMetricThread< VImageDimension >::GetReferencePointsPath(), and FREE::AccuracySOMetricThread< VImageDimension >::SetReferencePointsPath().

template<unsigned int VImageDimension>
IDPath FREE::AccuracySOMetricThread< VImageDimension >::m_MovingPointsPath [protected]

Definition at line 97 of file freAccuracySOMetricThread.h.

Referenced by FREE::AccuracySOMetricThread< VImageDimension >::AccuracySOMetricThread(), FREE::AccuracySOMetricThread< VImageDimension >::EvaluatePoints(), FREE::AccuracySOMetricThread< VImageDimension >::GetMovingPointsPath(), and FREE::AccuracySOMetricThread< VImageDimension >::SetMovingPointsPath().

template<unsigned int VImageDimension>
bool FREE::AccuracySOMetricThread< VImageDimension >::m_UseField [protected]

Definition at line 99 of file freAccuracySOMetricThread.h.

Referenced by FREE::AccuracySOMetricThread< VImageDimension >::AccuracySOMetricThread(), FREE::AccuracySOMetricThread< VImageDimension >::GetUseField(), FREE::AccuracySOMetricThread< VImageDimension >::ProcessSetup(), and FREE::AccuracySOMetricThread< VImageDimension >::SetUseField().


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