FREE::MediaContainerController Class Reference
[Media controller]

Controller class for a media container. More...

#include <freMediaContainerController.h>

Inheritance diagram for FREE::MediaContainerController:

Inheritance graph
FREE::MediaContainerControllerBase\< FREE::MediaContainer \>FREE::ComponentControllerBase\< TMediaContainer \>FREE::ComponentControllerInterface
[legend]
Collaboration diagram for FREE::MediaContainerController:

Collaboration graph
FREE::MediaContainerControllerBase\< FREE::MediaContainer \>FREE::ComponentControllerBase\< TMediaContainer \>FREE::ComponentControllerInterfaceFREE::CtrlProfile::ProfileInheritanceFREE::XMLStringMultiMapFREE::XMLStreamObject
[legend]

List of all members.

Public Types

typedef MediaContainer ComponentType
typedef
MediaContainerControllerBase
< MediaContainer
Superclass

Public Member Functions

virtual const char * GetNameOfClass () const
 MediaContainerController ()
virtual
ValidityTag::Pointer 
GetMediaValidityTag (const MediaID &mediaID, SessionComponentCache *pComponentCache) const
virtual
ValidityTag::Pointer 
GetMediaValidityTagRequirement (const MediaID &mediaID, SessionComponentCache *pComponentCache) const
virtual std::string GetMediaControllerID (const MediaID &mediaID, SessionComponentCache *pComponentCache) const

Protected Member Functions

virtual
GenericComponentType
GetSubComponentCasted (ComponentType *pMainComponent, const ComponentID &compID, SessionComponentCache *pMainComponentCache) const
virtual void SetSubComponentCasted (GenericComponentType *pSubComponent, ComponentType *pMainComponent, const ComponentID compID, SessionComponentCache *pMainComponentCache) const
virtual
GenericMediaPointer 
GetMediaCasted (const MediaID &mediaID, ComponentType *pComponent, SessionComponentCache *pComponentCache, SessionInfo *pSessionInfo) const
virtual void SetMediaCasted (const MediaID &mediaID, GenericMediaType *pMedia, ComponentType *pComponent, SessionComponentCache *pComponentCache, SessionInfo *pSessionInfo) const


Detailed Description

Controller class for a media container.

Definition at line 38 of file freMediaContainerController.h.


Member Typedef Documentation

typedef MediaContainer FREE::MediaContainerController::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::MediaContainerControllerBase< TMediaContainer >.

Definition at line 41 of file freMediaContainerController.h.

typedef MediaContainerControllerBase<MediaContainer> FREE::MediaContainerController::Superclass

Reimplemented from FREE::MediaContainerControllerBase< TMediaContainer >.

Definition at line 42 of file freMediaContainerController.h.


Constructor & Destructor Documentation

FREE::MediaContainerController::MediaContainerController (  ) 

Definition at line 61 of file freMediaContainerController.cxx.

References FREE::ComponentControllerInterface::m_Description, FREE::ControllerID::MediaContainerController, 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

virtual const char* FREE::MediaContainerController::GetNameOfClass (  )  const [inline, virtual]

Reimplemented from FREE::MediaContainerControllerBase< TMediaContainer >.

Definition at line 44 of file freMediaContainerController.h.

ValidityTag::Pointer FREE::MediaContainerController::GetMediaValidityTag ( const MediaID mediaID,
SessionComponentCache pComponentCache 
) const [virtual]

Retrieves the validity tag of the media specified by the mediaID. The tag is used to decide if a media component is outdated or up to date. It determines the time when the medium was actualized the last time. This can be used by other controllers that link to the media to decide if they may be outdated.
Reimplement GetMediaValidityTag() to realize special controller behavior.
This version checks the cache repository for an element with key "MediaValidityTag_[mediaID]" and returns the ValidityTag. (e.g.: mediaID = finalImage -> key = MediaValidityTag_finalImage). If no element exists with this key, but the media is defined in the controller profile, a NULL-ValidityTag will be returned (always outdated compared to others). If neither an element nor a profile entry can be found, an exception will be thrown.

Parameters:
[in] mediaID ID specifying the wanted media.
[in] pComponentCache Pointer to the component cache.
Returns:
ValidityTag of the media. NULL-ValidityTag if no tag is yet defined for the media.

Reimplemented from FREE::ComponentControllerBase< TMediaContainer >.

Definition at line 95 of file freMediaContainerController.cxx.

References catchAllNPassMacro, FREE::SessionComponentCache::Controller(), FREE::SessionComponentCache::ControllerIsAssigned(), FREE::ComponentControllerInterface::GetMediaValidityTag(), FREE::SessionComponentCache::SubCaches(), and throwCtrlExceptionMacro.

Here is the call graph for this function:

FREE::SessionComponentCache::ControllerFREE::SessionComponentCache::ControllerIsAssignedFREE::ComponentControllerInterface::GetMediaValidityTagFREE::SessionComponentCache::SubCaches

ValidityTag::Pointer FREE::MediaContainerController::GetMediaValidityTagRequirement ( const MediaID mediaID,
SessionComponentCache pComponentCache 
) const [virtual]

Retrieves the validity tag requirement of the media specified by the mediaID. The requirement is the most up to date ValidityTag in the dependency chain of a media component.
Reimplement GetMediaValidityTagRequirement() to realize special controller behavior accordingly a certain dependency chain.
This version returns only the ValidityTag of the specified media; thus the media has no dependencies.

Parameters:
[in] mediaID ID specifying the wanted media.
[in] pComponentCache Pointer to the component cache.
Returns:
ValidityTag requirement

Reimplemented from FREE::ComponentControllerBase< TMediaContainer >.

Definition at line 113 of file freMediaContainerController.cxx.

References catchAllNPassMacro, FREE::SessionComponentCache::Controller(), FREE::SessionComponentCache::ControllerIsAssigned(), FREE::ComponentControllerInterface::GetMediaValidityTagRequirement(), FREE::SessionComponentCache::SubCaches(), and throwCtrlExceptionMacro.

Here is the call graph for this function:

FREE::SessionComponentCache::ControllerFREE::SessionComponentCache::ControllerIsAssignedFREE::ComponentControllerInterface::GetMediaValidityTagRequirementFREE::SessionComponentCache::SubCaches

std::string FREE::MediaContainerController::GetMediaControllerID ( const MediaID mediaID,
SessionComponentCache pComponentCache 
) const [virtual]

Retrieves the ID of the actual controller of the given media. Every controller has default types/controllers for its media, but they could be invalid by linking media (e.g. media type is intensity image media, but the actually linked medium could be of subtype region image media.).

Parameters:
[in] mediaID ID specifying the wanted media.
[in] pComponentCache Pointer to the component cache.

Reimplemented from FREE::ComponentControllerBase< TMediaContainer >.

Definition at line 131 of file freMediaContainerController.cxx.

References FREE::ComponentSetup::Components(), FREE::csUndefinedController, FREE::ComponentSetup::GetControllerID(), FREE::KeyedCollectionBase< TKey, TElement, TIdentifierClass >::GetElement(), FREE::SessionComponentCache::Setup(), FREE::SessionComponentCache::SetupIsAssigned(), and throwCtrlExceptionMacro.

Here is the call graph for this function:

FREE::ComponentSetup::ComponentsFREE::ComponentSetup::GetControllerIDFREE::KeyedCollectionBase::GetElementFREE::SessionComponentCache::SetupFREE::SessionComponentCache::SetupIsAssignedFREE::KeyedCollectionBase::GetElementIndex

MediaContainerController::GenericComponentType * FREE::MediaContainerController::GetSubComponentCasted ( ComponentType pMainComponent,
const ComponentID compID,
SessionComponentCache pMainComponentCache 
) const [protected, virtual]

Definition at line 69 of file freMediaContainerController.cxx.

References FREE::SessionComponentCache::Controller(), FREE::SessionComponentCache::ControllerIsAssigned(), FREE::ComponentControllerInterface::GetGenericComponent(), FREE::SessionComponentCache::SubCaches(), and throwCtrlExceptionMacro.

Here is the call graph for this function:

FREE::SessionComponentCache::ControllerFREE::SessionComponentCache::ControllerIsAssignedFREE::ComponentControllerInterface::GetGenericComponentFREE::SessionComponentCache::SubCaches

void FREE::MediaContainerController::SetSubComponentCasted ( GenericComponentType pSubComponent,
ComponentType pMainComponent,
const ComponentID  compID,
SessionComponentCache pMainComponentCache 
) const [protected, virtual]

Definition at line 82 of file freMediaContainerController.cxx.

References FREE::SessionComponentCache::Controller(), FREE::SessionComponentCache::ControllerIsAssigned(), FREE::ComponentControllerInterface::SetGenericComponent(), FREE::SessionComponentCache::SubCaches(), and throwCtrlExceptionMacro.

Here is the call graph for this function:

FREE::SessionComponentCache::ControllerFREE::SessionComponentCache::ControllerIsAssignedFREE::ComponentControllerInterface::SetGenericComponentFREE::SessionComponentCache::SubCaches

MediaContainerController::GenericMediaPointer FREE::MediaContainerController::GetMediaCasted ( const MediaID mediaID,
ComponentType pComponent,
SessionComponentCache pComponentCache,
SessionInfo pSessionInfo 
) const [protected, virtual]

Implementation of FREE::MediaContainerController ///////////////////

Definition at line 35 of file freMediaContainerController.cxx.

References FREE::SessionComponentCache::Controller(), FREE::ComponentControllerInterface::GetMedia(), FREE::SessionComponentCache::SubCaches(), and throwCtrlExceptionMacro.

Here is the call graph for this function:

FREE::SessionComponentCache::ControllerFREE::ComponentControllerInterface::GetMediaFREE::SessionComponentCache::SubCaches

void FREE::MediaContainerController::SetMediaCasted ( const MediaID mediaID,
GenericMediaType pMedia,
ComponentType pComponent,
SessionComponentCache pComponentCache,
SessionInfo pSessionInfo 
) const [protected, virtual]

Definition at line 49 of file freMediaContainerController.cxx.

References FREE::SessionComponentCache::Controller(), FREE::ComponentControllerInterface::SetMedia(), FREE::SessionComponentCache::SubCaches(), and throwCtrlExceptionMacro.

Here is the call graph for this function:

FREE::SessionComponentCache::ControllerFREE::ComponentControllerInterface::SetMediaFREE::SessionComponentCache::SubCaches


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