fw4spl
fwServices::IService Class Referenceabstract

Base class for all services. More...

#include <IService.hpp>

+ Inheritance diagram for fwServices::IService:
+ Collaboration diagram for fwServices::IService:

Classes

struct  Config
 Used to store a service configuration. More...
 
class  KeyConnectionsMap
 This class is a helper to define the connections of a service and its data. More...
 
struct  ObjectServiceConfig
 Used to store object configuration in a service. More...
 

Public Types

enum  AccessType : std::uint8_t { INPUT, OUTPUT, INOUT }
 
typedef ::boost::property_tree::ptree ConfigType
 
typedef std::string IdType
 
typedef std::string KeyType
 
typedef std::map< KeyType, std::weak_ptr< const ::fwData::Object > > InputMapType
 
typedef std::map< KeyType, std::weak_ptr< ::fwData::Object > > InOutMapType
 
typedef std::map< KeyType, std::shared_ptr< ::fwData::Object > > OutputMapType
 
Definition of service status
enum  GlobalStatus {
  STARTED, STARTING, SWAPPING, STOPPED,
  STOPPING
}
 Defines all possible global status for a service, including transitions. More...
 
enum  UpdatingStatus { UPDATING, NOTUPDATING }
 Defines all possible status for an update process. More...
 
enum  ConfigurationStatus { CONFIGURING, CONFIGURED, UNCONFIGURED }
 Defines all possible status for a configuration process. More...
 
- Public Types inherited from fwCom::HasSlots
typedef std::shared_ptr< HasSlotssptr
 
typedef std::shared_ptr< const HasSlotscsptr
 
- Public Types inherited from fwCom::HasSignals
typedef std::shared_ptr< HasSignalssptr
 
typedef std::shared_ptr< const HasSignalscsptr
 

Public Member Functions

virtual bool isA (const std::string &type) const override
 
FWSERVICES_API void registerInput (const ::fwData::Object::csptr &obj, const std::string &key, const bool autoConnect=false, const bool optional=false)
 Register an input object for this service. More...
 
FWSERVICES_API void registerInOut (const ::fwData::Object::sptr &obj, const std::string &key, const bool autoConnect=false, const bool optional=false)
 Register an in/out object for this service. More...
 
Key service API
FWSERVICES_API void setConfiguration (const ::fwRuntime::ConfigurationElement::sptr _cfgElement)
 Affect the configuration, using a generic XML like structure. More...
 
FWSERVICES_API void setConfiguration (const Config &_configuration)
 Set the configuration. More...
 
FWSERVICES_API void setConfiguration (const ConfigType &ptree)
 Affect the configuration, using a boost property tree. More...
 
FWSERVICES_API void configure ()
 Invoke configuring() if m_globalState == STOPPED. Invoke reconfiguring() if m_globalState == STARTED. Does nothing otherwise. More...
 
FWSERVICES_API SharedFutureType start ()
 Invoke starting() if m_globalState == STOPPED. Does nothing otherwise. More...
 
FWSERVICES_API SharedFutureType stop ()
 Invoke stopping() if m_globalState == STARTED. Does nothing otherwise. Stops all observations. More...
 
FWSERVICES_API SharedFutureType update ()
 Invoke updating() if m_globalState == STARTED. Does nothing otherwise. More...
 
FWSERVICES_API SharedFutureType swap (::fwData::Object::sptr _obj)
 Associate the service to another object. More...
 
FWSERVICES_API SharedFutureType swapKey (const KeyType &_key,::fwData::Object::sptr _obj)
 Associate the service to another object. More...
 
All concerning status access
FWSERVICES_API GlobalStatus getStatus () const noexcept
 Return the global process status. More...
 
FWSERVICES_API bool isStarted () const noexcept
 Test if the service is started or not. More...
 
FWSERVICES_API bool isStopped () const noexcept
 Test if the service is stopped or not. More...
 
FWSERVICES_API ConfigurationStatus getConfigurationStatus () const noexcept
 Return the configuration process status. More...
 
FWSERVICES_API UpdatingStatus getUpdatingStatus () const noexcept
 Return the update process status. More...
 
All concerning configuration
FWSERVICES_API::fwRuntime::ConfigurationElement::sptr getConfiguration () const
 Return the configuration, in an xml format read using runtime library. More...
 
FWSERVICES_API ConfigType getConfigTree () const
 Return the configuration, in an boost property tree.
 
Optimized access to associated Object & Helper
FWSERVICES_API::fwData::Object::sptr getObject ()
 Return the object associated to service. More...
 
template<class DATATYPE >
std::shared_ptr< DATATYPE > getObject ()
 Return the object associated to service. The object is casted. More...
 
FWSERVICES_API const InputMapType & getInputs () const
 Return the inputs map associated to service. More...
 
FWSERVICES_API const InOutMapType & getInOuts () const
 Return the inouts map associated to service. More...
 
FWSERVICES_API const OutputMapType & getOutputs () const
 Return the outouts map associated to service. More...
 
FWSERVICES_API std::vector< ::fwData::Object::csptr > getObjects () const
 Return the objects associated to service. More...
 
template<class DATATYPE >
std::shared_ptr< const DATATYPE > getInput (const KeyType &key) const
 Return the input object at the given key. Asserts if the data is not of the right type. More...
 
template<class DATATYPE >
std::shared_ptr< DATATYPE > getInOut (const KeyType &key) const
 Return the inout object at the given key. Asserts if the data is not of the right type. More...
 
template<class DATATYPE >
std::shared_ptr< DATATYPE > getOutput (const KeyType &key) const
 Return the output object at the given key. Asserts if the data is not of the right type. More...
 
template<class DATATYPE >
std::shared_ptr< const DATATYPE > getInput (const KeyType &keybase, size_t index) const
 Return the input object at the given key. Asserts if the data is not of the right type. More...
 
template<class DATATYPE >
std::shared_ptr< DATATYPE > getInOut (const KeyType &keybase, size_t index) const
 Return the inout object at the given key. Asserts if the data is not of the right type. More...
 
template<class DATATYPE >
std::shared_ptr< DATATYPE > getOutput (const KeyType &keybase, size_t index) const
 Return the output object at the given key. Asserts if the data is not of the right type. More...
 
FWSERVICES_API void setOutput (const ::fwServices::IService::KeyType &key, const ::fwData::Object::sptr &object, size_t index=0)
 Register an output object at a given key in the OSR, replacing it if it already exists. More...
 
size_t getKeyGroupSize (const KeyType &keybase) const
 Return the number of key in a group of keys. More...
 
- Public Member Functions inherited from fwTools::Object
- Public Member Functions inherited from fwCore::BaseObject
- Public Member Functions inherited from fwCom::HasSlots
std::shared_ptr< SlotBaseslot (const Slots::SlotKeyType &key) const
 
template<typename SlotType >
std::shared_ptr< SlotType > slot (const Slots::SlotKeyType &key) const
 
template<typename F , typename A >
std::shared_ptr< Slot< typename::fwCom::util::convert_function_type< F >::type > > newSlot (const Slots::SlotKeyType &key, F f, A a)
 
- Public Member Functions inherited from fwCom::HasSignals
std::shared_ptr< SignalBasesignal (const Signals::SignalKeyType &key) const
 
template<typename SignalType >
std::shared_ptr< SignalType > signal (const Signals::SignalKeyType &key) const
 
template<typename SignalType >
std::shared_ptr< SignalType > newSignal (const Signals::SignalKeyType &key)
 

Static Public Member Functions

static bool isTypeOf (const std::string &type)
 
- Static Public Member Functions inherited from fwTools::Object
static bool isTypeOf (const std::string &type)
 
static const std::string & classname ()
 return full object's classname with its namespace, i.e. fwCore::BaseObject
 
- Static Public Member Functions inherited from fwCore::BaseObject
static bool isTypeOf (const std::string &type)
 
static const std::string & leafClassname ()
 return object's classname without its namespace, i.e. BaseObject
 
static const std::string & classname ()
 return object's classname without its namespace, i.e. BaseObject
 

Static Public Attributes

static FWSERVICES_API const std::string s_DEFAULT_OBJECT = "defaultObject"
 

Protected Member Functions

Constructor and Destructor
FWSERVICES_API IService ()
 IService constructor. More...
 
virtual FWSERVICES_API ~IService ()
 IService desctructor. More...
 
Interface to override (implementation contract)
virtual FWSERVICES_API void starting ()=0
 Initialize the service activity. More...
 
virtual FWSERVICES_API void stopping ()=0
 Uninitialize the service activity. The stop() method is always invoked before destroying a service. More...
 
virtual void swapping ()
 Swap the service from associated object to another object. More...
 
virtual void swapping (const KeyType &key)
 Swap the service from an associated object to another object. The key in parameter indicates allows to retrieve the new data with getInput(), getInOut() or getOutput(). If you need the old object, you need to keep a shared pointer on it inside your service implementation. More...
 
virtual FWSERVICES_API void configuring ()=0
 Configure the service before starting. Apply the configuration to service. More...
 
virtual FWSERVICES_API void reconfiguring ()
 Reconfigure the service activity when is started. More...
 
virtual FWSERVICES_API void updating ()=0
 Perform some computations according to object (this service is attached to) attribute values and its internal state. More...
 
virtual FWSERVICES_API void info (std::ostream &_sstream)
 Write information in a stream. More...
 
virtual FWSERVICES_API KeyConnectionsMap getAutoConnections () const
 Returns proposals to connect service slots to associated objects signals, this method is used for obj/srv auto connection.
 
- Protected Member Functions inherited from fwTools::fwID
FWTOOLS_API bool hasID () const
 Return true if the object has an id set. More...
 
FWTOOLS_API IDType getID (Policy policy=GENERATE) const
 Returns the id of the object. If it is not set and the policy value is. More...
 
virtual FWTOOLS_API void setID (IDType newID)
 Set a newID for the object, (newID must not exist in fwID), the oldest one is released. More...
 
FWTOOLS_API void resetID ()
 Release the id for the object. More...
 
 fwID ()
 Constructor : does nothing.
 
- Protected Member Functions inherited from fwCom::HasSlots
 HasSlots (const HasSlots &)
 Copy constructor forbidden.
 
HasSlotsoperator= (const HasSlots &)
 Copy operator forbidden.
 
- Protected Member Functions inherited from fwCom::HasSignals
 HasSignals (const HasSignals &)
 Copy constructor forbidden.
 
HasSignalsoperator= (const HasSignals &)
 Copy operator forbidden.
 

Protected Attributes

::fwRuntime::ConfigurationElement::sptr m_configuration
 Configuration element used to configure service internal state using a generic XML like structure TODO Make this const, we are not supposed to edit that !
 
::fwData::Object::wptr m_associatedObject
 associated object of service More...
 
- Protected Attributes inherited from fwTools::Object
std::shared_ptr< ::fwTools::UUIDm_uuid
 UUID used to identify the object, notably for serialization.
 
- Protected Attributes inherited from fwCom::HasSlots
Slots m_slots
 
- Protected Attributes inherited from fwCom::HasSignals
Signals m_signals
 

Friends

class registry::ObjectService
 
class AppConfigManager
 
template<class , class , class >
class ::fwTools::ClassFactory
 
class ::fwTools::Factory
 

Demangling methods

virtual const std::string & getLeafClassname () const override
 return object's classname without its namespace, i.e. BaseObject
 
virtual const std::string & getClassname () const override
 return full object's classname with its namespace, i.e. fwCore::BaseObject
 
static const std::string & leafClassname ()
 return object's classname without its namespace, i.e. BaseObject
 
static const std::string & classname ()
 return object's classname without its namespace, i.e. BaseObject
 

Signal API

typedef ::fwCom::Signal< void()> StartedSignalType
 
typedef ::fwCom::Signal< void()> UpdatedSignalType
 
typedef ::fwCom::Signal< void()> StoppedSignalType
 
static FWSERVICES_APIconst::fwCom::Slots::SlotKeyType s_STARTED_SIG = "started"
 
static FWSERVICES_APIconst::fwCom::Slots::SlotKeyType s_UPDATED_SIG = "updated"
 
static FWSERVICES_APIconst::fwCom::Slots::SlotKeyType s_STOPPED_SIG = "stopped"
 

Slot API

typedef std::shared_future< void > SharedFutureType
 Slot to call start method.
 
typedef std::packaged_task< void()> PackagedTaskType
 Slot to call start method.
 
typedef std::future< void > UniqueFutureType
 Slot to call start method.
 
typedef ::fwCom::Slot< SharedFutureType()> StartSlotType
 Slot to call start method.
 
typedef ::fwCom::Slot< SharedFutureType()> StopSlotType
 Slot to call start method.
 
typedef ::fwCom::Slot< SharedFutureType()> UpdateSlotType
 Slot to call start method.
 
typedef ::fwCom::Slot< SharedFutureType(::fwData::Object::sptr)> SwapSlotType
 Slot to call start method.
 
typedef ::fwCom::Slot< SharedFutureType(const KeyType &,::fwData::Object::sptr)> SwapKeySlotType
 Slot to call start method.
 
static FWSERVICES_APIconst::fwCom::Slots::SlotKeyType s_START_SLOT = "start"
 Slot to call start method.
 
static FWSERVICES_APIconst::fwCom::Slots::SlotKeyType s_STOP_SLOT = "stop"
 Slot to call start method.
 
static FWSERVICES_APIconst::fwCom::Slots::SlotKeyType s_UPDATE_SLOT = "update"
 Slot to call start method.
 
static FWSERVICES_APIconst::fwCom::Slots::SlotKeyType s_SWAP_SLOT = "swap"
 Slot to call start method.
 
static FWSERVICES_APIconst::fwCom::Slots::SlotKeyType s_SWAPKEY_SLOT = "swapKey"
 Slot to call start method.
 
StartSlotType::sptr m_slotStart
 Slot to call start method.
 
StopSlotType::sptr m_slotStop
 Slot to call stop method.
 
UpdateSlotType::sptr m_slotUpdate
 Slot to call update method.
 
SwapSlotType::sptr m_slotSwap
 Slot to call swap method.
 
SwapKeySlotType::sptr m_slotSwapKey
 Slot to call swap method.
 
std::shared_ptr< ::fwThread::Workerm_associatedWorker
 Associated worker.
 
FWSERVICES_API void setWorker (std::shared_ptr< ::fwThread::Worker > worker)
 Initializes m_associatedWorker and associates this worker to all service slots.
 
FWSERVICES_API std::shared_ptr< ::fwThread::WorkergetWorker () const
 Returns associate worker.
 

Communication connection between object::signals and service::slots

typedef ::fwCom::helper::SigSlotConnection::KeyConnectionsType KeyConnectionsType
 Returns proposals to connect service slots to associated object signals, this method is used for obj/srv auto connection. More...
 
virtual FWSERVICES_API KeyConnectionsType getObjSrvConnections () const
 Returns proposals to connect service slots to associated object signals, this method is used for obj/srv auto connection. More...
 

Misc

FWSERVICES_API friend std::ostream & operator<< (std::ostream &_sstream, IService &_service)
 Streaming a service. More...
 
FWSERVICES_API bool hasObjectId (const KeyType &_key) const
 Return true if the object with the given key has an identifier. More...
 
FWSERVICES_API IdType getObjectId (const KeyType &_key) const
 Return the id of the object, throw if it is not found.
 
FWSERVICES_API void setObjectId (const KeyType &_key, const IdType &_id)
 Set the id of an object key.
 

Additional Inherited Members

- Protected Types inherited from fwTools::fwID
enum  Policy { EMPTY = 1, GENERATE, MUST_EXIST }
 
typedef std::string IDType
 
- Static Protected Member Functions inherited from fwTools::fwID
static bool isTypeOf (const std::string &type)
 
static FWTOOLS_API bool exist (IDType _id)
 
static FWTOOLS_API std::shared_ptr< ::fwTools::ObjectgetObject (IDType requestID)
 Retrieve the object attached to the given id. Return a null sptr if no correspondence exist. More...
 
static const std::string & leafClassname ()
 return object's classname without its namespace, i.e. BaseObject
 
static const std::string & classname ()
 return object's classname without its namespace, i.e. BaseObject
 

Detailed Description

Base class for all services.

This class defines the API to use and declare services. The service state aims to impose the execution order (i.e. configure(), start(), update() or, stop()).

Signals

  • started() : Emitted when the service has started.
  • updated() : Emitted when the service has updated.
  • stopped() : Emitted when the service has stopped.

Slots

Definition at line 61 of file IService.hpp.

Member Typedef Documentation

typedef ::fwCom::helper::SigSlotConnection::KeyConnectionsType fwServices::IService::KeyConnectionsType

Returns proposals to connect service slots to associated object signals, this method is used for obj/srv auto connection.

Deprecated:
Use getAutoConnections() instead

Definition at line 449 of file IService.hpp.

Member Enumeration Documentation

Defines all possible status for a configuration process.

Enumerator
CONFIGURING 

state during configuration

CONFIGURED 

state after configuration

UNCONFIGURED 

state when the service is not configured

Definition at line 139 of file IService.hpp.

Defines all possible global status for a service, including transitions.

Enumerator
STARTED 

state after start

STARTING 

state during start

SWAPPING 

state during swap

STOPPED 

state after stop

STOPPING 

state during stop

Definition at line 122 of file IService.hpp.

Defines all possible status for an update process.

Enumerator
UPDATING 

state during update

NOTUPDATING 

state during when the service is not updating

Definition at line 132 of file IService.hpp.

Constructor & Destructor Documentation

fwServices::IService::IService ( )
protected

IService constructor.

This constructor does nothing. By default, m_associatedObject is null and service is considered as STOPPED, NOTUPDATING and UNCONFIGURED.

Definition at line 49 of file IService.cpp.

References m_slotStart, m_slotStop, m_slotSwap, m_slotSwapKey, m_slotUpdate, s_START_SLOT, s_STOP_SLOT, s_SWAP_SLOT, s_SWAPKEY_SLOT, and s_UPDATE_SLOT.

fwServices::IService::~IService ( )
protectedvirtual

IService desctructor.

This destructor does nothing.

Definition at line 68 of file IService.cpp.

Member Function Documentation

void fwServices::IService::configure ( )

Invoke configuring() if m_globalState == STOPPED. Invoke reconfiguring() if m_globalState == STARTED. Does nothing otherwise.

Precondition
m_configurationState == UNCONFIGURED
Postcondition
m_configurationState == CONFIGURED
Note
invoke checkConfiguration()

Definition at line 271 of file IService.cpp.

References CONFIGURED, CONFIGURING, configuring(), fwTools::fwID::getID(), reconfiguring(), SLM_ERROR, STARTED, STOPPED, and UNCONFIGURED.

+ Here is the call graph for this function:

virtual FWSERVICES_API void fwServices::IService::configuring ( )
protectedpure virtual

Configure the service before starting. Apply the configuration to service.

See also
configure()

Implemented in fwIO::IReader, activities::action::SActivityLauncher, fwRenderVTK::SRender, visuVTKAdaptor::SMesh, fwIO::IWriter, guiQt::editor::DynamicView, uiMedDataQt::editor::SActivityWizard, guiQt::editor::SDynamicView, gui::action::SStarter, ioGdcm::SSeriesDBReader, fwRenderQt::SRender, guiQt::editor::SParameters, ioAtoms::SReader, ioPacs::SSliceIndexDicomPullerEditor, ctrlSelection::SManage, uiIO::editor::SIOSelector, gui::action::SConfigLauncher, visuVTKAdaptor::SNegatoMPR, uiPreferences::action::SPreferencesConfiguration, ioVTK::SImageWriter, visuVTKAdaptor::SMeshNormals, uiMedDataQt::editor::SModelSeriesList, activities::SActivitySequencer, guiQt::editor::SSlider, ioDicomWeb::SSliceIndexDicomPullerEditor, ioData::MeshWriterService, ioData::SplineReaderService, ioPacs::SPacsConfigurationEditor, uiImageQt::WindowLevel, gui::aspect::SDefaultToolBar, ioAtoms::SWriter, ioDicom::SSliceIndexDicomEditor, ioPacs::SSeriesPuller, visuVTKAdaptor::SImageSlice, vtkSimpleMesh::SRenderer, ioVTK::SSeriesDBReader, guiQt::editor::SListView, visuVTKAdaptor::SImagesBlend, visuVTKAdaptor::SReconstruction, visuVTKVRAdaptor::SVolume, ioVTK::SModelSeriesObjWriter, guiQt::editor::SSelectionMenuButton, visuVTKAdaptor::SImage, uiMeasurementQt::editor::SLandmarks, ioGdcm::SDicomSeriesDBReader, ioVTK::SModelSeriesWriter, uiMedDataQt::editor::SSeries, visuVTKAdaptor::SNegatoSlicingInteractor, ioQt::SPdfWriter, ioVTK::SMeshWriter, activities::action::SCreateActivity, uiImageQt::SliceIndexPositionEditor, visuVTKAdaptor::SModelSeries, visuVTKAdaptor::SNegatoOneSlice, visuVTKAdaptor::SPlane, activities::SSeriesSignal, ioVTK::SImageSeriesWriter, ioVTK::SModelSeriesReader, guiQt::editor::SSignalButton, ioVTK::SImageReader, ioDicom::SFilterSelectionEditor, uiMedDataQt::editor::SSelector, ioData::STrianMeshReader, visuVTKAdaptor::SText, gui::action::SModifyLayout, uiIO::action::SExportWithSeriesDB, visuVTKAdaptor::SPickerInteractor, vtkCompositeMesh::RendererService, fwServices::SConfigController, ioVTK::SImageSeriesReader, ioVTK::SMeshReader, ioData::SAttachmentSeriesReader, uiMeasurementQt::editor::Distance, ioPacs::SSeriesPusher, uiIO::action::SSeriesDBMerger, scene2D::adaptor::SNegato, visuVTKAdaptor::SImageSeries, visuVTKAdaptor::SPoint, vtkSimpleNegato::SRenderer, activities::editor::SCreateActivity, ioData::TransformationMatrix3DReaderService, basicRegistration::SPointListRegistration, visuVTKAdaptor::SLandmarks, ioDcmtk::SSeriesDBReader, visuVTKAdaptor::SImageText, visuVTKAdaptor::SPlaneList, ioVtkGdcm::SSeriesDBReader, visuVTKAdaptor::SSlicesCursor, uiMedDataQt::SSeriesViewer, fwServices::IXMLParser, ioData::TransformationMatrix3DWriterService, ioVtkGdcm::SImageSeriesWriter, visuVTKAdaptor::STexture, ioDicomWeb::SSeriesPuller, ioVtkGdcm::SSeriesDBLazyReader, uiTF::TransferFunctionEditor, gui::editor::SJobBar, ioGdcm::SDicomSeriesWriter, ioTuto::ExternalDataReaderService, uiImageQt::ImageTransparency, ctrlCamp::SExtractMeshByType, uiVisuQt::SnapshotEditor, visuVTKAdaptor::SImagePickerInteractor, ioITK::SInrSeriesDBReader, guiQt::editor::Code, visuVTKAdaptor::SLine, visuVTKAdaptor::SPointList, fwGui::view::IActivityView, monitorQt::DumpEditor, visuVTKAdaptor::SProbeCursor, ioGdcm::SSurfaceSegmentationWriter, uiReconstructionQt::RepresentationEditor, visuVTKAdaptor::SImage3DCursor, visuVTKAdaptor::SMeshesBoxWidget, scene2D::adaptor::STransferFunction, gui::aspect::SDefaultMenu, gui::aspect::SDefaultMenuBar, uiMedDataQt::action::SExportSeries, ctrlCamp::SCopy, ctrlCamp::SExtractObj, ctrlSelection::wrapper::SImageSignalForwarder, ioDicom::SFilterSelectorDialog, ioDicomWeb::SSeriesPusher, uiImageQt::ImageInfo, visuVTKAdaptor::STransform, ioDicomWeb::SQueryEditor, ioGdcm::SSeriesDBWriter, uiMeasurement::SManageLandmark, scene2D::processing::SComputeHistogram, uiVisu::action::CrossTypeAction, uiVisu::action::SSnapshot, scene2D::adaptor::SGrid2D, uiReconstructionQt::OrganMaterialEditor, scene2D::adaptor::SCurvedHistogram, visuVTKAdaptor::SAxis, ctrlHistory::SCommandHistory, ctrlSelection::updater::SObjFromSlot, ioGdcm::SDicomSeriesConverter, visuVTKAdaptor::SImageSliceOrientationText, visuVTKAdaptor::SNegatoWindowingInteractor, gui::action::SSlotCaller, ioITK::JpgImageWriterService, scene2D::adaptor::SHistogramCursor, scene2D::adaptor::SScaleValues, scene2D::adaptor::SViewportRangeSelector, visuVTKAdaptor::SImagesProbeCursor, visuVTKAdaptor::SPlaneInteractor, ctrlSelection::ImageUpdateAxis, ioITK::InrImageReaderService, ioPacs::SPacsConfigurationInitializer, ioPacs::SQueryEditor, opVTKMesh::action::SMeshCreation, scene2D::adaptor::SHistogramValue, visuVTKAdaptor::SMaterial, uiMeasurement::action::SFocusLandmark, gui::action::SPushField, gui::action::SPushObject, ctrlMemory::LockDumpSrv, opImageFilter::SThreshold, scene2D::adaptor::SAxis, visuVTKAdaptor::SDistance, visuVTKAdaptor::SImageMultiDistances, vtkSimpleMesh::SSimpleMeshDeformation, Tuto14MeshGenerator::SMeshModifier, ioGdcm::SDicomSeriesAnonymizer, ioITK::InrImageWriterService, uiMedDataQt::editor::SOrganTransformation, visuVTKAdaptor::SMedical3DCamera, gui::action::SSignal, preferences::SPreferences, ioITK::SJpgImageSeriesWriter, ioPacs::SProgressBarController, uiVisuQt::STransformEditor, visuVTKAdaptor::S2DWheel, scene2D::adaptor::SHistogram, Tuto16MultithreadConsole::SIncrementArray, guiQt::SSignalShortcut, uiGenericQt::action::SShowAbout, uiVisuQt::PointEditor, visuVTKAdaptor::SResection, opVTKMesh::SVTKMesher, visuVTKAdaptor::SVectorField, Tuto16MultithreadConsole::SShowArray, ioITK::SImageSeriesWriter, uiIO::action::SFolderSelector, visuVTKAdaptor::SBoxWidget, visuVTKAdaptor::SSliceFollowerCamera, ctrlSelection::SAddField, basicRegistration::SImagesSubstract, uiMeasurement::action::ShowDistance, uiMedDataQt::action::SInitNewSeries, scene2D::adaptor::SLine, scene2D::adaptor::SViewportUpdater, visuVTKAdaptor::SCamera, visuVTKAdaptor::SLabeledPointList, ctrlSelection::BookmarkSrv, ctrlSelection::MedicalImageSrv, ioDicom::SSeriesDBMerger, scene2D::adaptor::SSquare, visuVTKAdaptor::SSnapshot, visuVTKAdaptor::SResectionDB, gui::action::SDoNothing, Tuto16MultithreadConsole::SReadArray, monitor::action::MemoryConsumption, visuVTKAdaptor::SInteractorStyle, uiMeasurement::action::RemoveDistance, uiGenericQt::action::LaunchBrowserActionService, gui::action::SDefault, gui::action::SQuit, gui::frame::SDefaultFrame, gui::view::SDefaultView, visuVTKAdaptor::SOrientationMarker, memory::SDumpPolicy, uiMeasurement::action::LoadLandmark, uiMeasurement::action::RemoveLandmark, uiMeasurement::action::SaveLandmark, uiGenericQt::action::ShowHelpContents, uiMeasurement::action::AddLandmark, uiMeasurement::action::SAddLabeledPoint, uiMeasurement::action::ShowLandmark, visuVTKAdaptor::SCube, monitorQt::action::ComponentsTree, scene2D::adaptor::SViewportInteractor, uiMeasurement::action::AddDistance, monitorQt::action::ClassFactoryRegistryInfo, monitor::action::fwMetrics, monitor::action::MemoryInfo, and monitor::action::SDumpAll.

Referenced by configure().

+ Here is the caller graph for this function:

fwRuntime::ConfigurationElement::sptr fwServices::IService::getConfiguration ( ) const

Return the configuration, in an xml format read using runtime library.

Returns
m_configuration, a structure which represents the service configuration

Definition at line 240 of file IService.cpp.

References m_configuration.

Referenced by getConfigTree().

+ Here is the caller graph for this function:

IService::ConfigurationStatus fwServices::IService::getConfigurationStatus ( ) const
noexcept

Return the configuration process status.

Returns
m_configurationState

Definition at line 397 of file IService.cpp.

template<class DATATYPE >
std::shared_ptr< DATATYPE > fwServices::IService::getInOut ( const KeyType &  key) const

Return the inout object at the given key. Asserts if the data is not of the right type.

Parameters
keyname of the data to retrieve.
Returns
object cast in the right type, nullptr if not found.

Definition at line 47 of file IService.hxx.

References OSLM_ASSERT, and SPTR.

template<class DATATYPE >
std::shared_ptr< DATATYPE > fwServices::IService::getInOut ( const KeyType &  keybase,
size_t  index 
) const

Return the inout object at the given key. Asserts if the data is not of the right type.

Parameters
keyname of the data to retrieve.
Returns
object cast in the right type, nullptr if not found.

Definition at line 93 of file IService.hxx.

References OSLM_ASSERT, and SLM_ASSERT.

const IService::InOutMapType & fwServices::IService::getInOuts ( ) const
inline

Return the inouts map associated to service.

Returns
m_inoutsMap

Definition at line 141 of file IService.hxx.

template<class DATATYPE >
std::shared_ptr< const DATATYPE > fwServices::IService::getInput ( const KeyType &  key) const

Return the input object at the given key. Asserts if the data is not of the right type.

Parameters
keyname of the data to retrieve.
Returns
object cast in the right type, nullptr if not found.

Definition at line 30 of file IService.hxx.

References CSPTR, and OSLM_ASSERT.

template<class DATATYPE >
std::shared_ptr< const DATATYPE > fwServices::IService::getInput ( const KeyType &  keybase,
size_t  index 
) const

Return the input object at the given key. Asserts if the data is not of the right type.

Parameters
keyname of the data to retrieve.
Returns
object cast in the right type, nullptr if not found.

Definition at line 79 of file IService.hxx.

References OSLM_ASSERT, and SLM_ASSERT.

const IService::InputMapType & fwServices::IService::getInputs ( ) const
inline

Return the inputs map associated to service.

Returns
m_inputsMap

Definition at line 134 of file IService.hxx.

size_t fwServices::IService::getKeyGroupSize ( const KeyType &  keybase) const
inline

Return the number of key in a group of keys.

Parameters
keybasegroup name.
Returns
number of keys in this group.

Definition at line 119 of file IService.hxx.

Referenced by visuVTKAdaptor::SImagesBlend::checkImageInformations(), ioQt::SPdfWriter::starting(), visuVTKAdaptor::SImagesProbeCursor::stopping(), ctrlCamp::SExtractObj::stopping(), and ctrlCamp::SExtractMeshByType::stopping().

+ Here is the caller graph for this function:

fwData::Object::sptr fwServices::IService::getObject ( )

Return the object associated to service.

Returns
m_associatedObject
Precondition
the service must have an associated object set
associated object has not expired
Deprecated:
use getInput() or getInOut() instead

Definition at line 101 of file IService.cpp.

References FW_DEPRECATED, getClassname(), fwTools::fwID::getID(), m_associatedObject, and OSLM_ASSERT.

Referenced by ctrlSelection::BookmarkSrv::starting(), ctrlMemory::LockDumpSrv::starting(), and uiIO::editor::SIOSelector::updating().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<class DATATYPE >
std::shared_ptr< DATATYPE > fwServices::IService::getObject ( )

Return the object associated to service. The object is casted.

Returns
m_associatedObject casted in a good type
Precondition
the service must have an associated object set
associated object does not be expired
Postcondition
cast verification in debug mode ( assertion on dynamic cast )
Deprecated:
use getInput() or getInOut() instead

Definition at line 17 of file IService.hxx.

References FW_DEPRECATED, OSLM_ASSERT, and SPTR.

std::vector<::fwData::Object::csptr > fwServices::IService::getObjects ( ) const
inline

Return the objects associated to service.

Returns
m_associatedObject
Precondition
the service must have an associated object set
associated objects have not expired

Definition at line 155 of file IService.hxx.

References m_associatedObject.

IService::KeyConnectionsType fwServices::IService::getObjSrvConnections ( ) const
virtual

Returns proposals to connect service slots to associated object signals, this method is used for obj/srv auto connection.

Deprecated:
Use getAutoConnections() instead

Reimplemented in activities::action::SActivityLauncher, uiMedDataQt::editor::SModelSeriesList, activities::SSeriesSignal, uiMedDataQt::editor::SSeries, uiMedDataQt::SSeriesViewer, vtkCompositeMesh::RendererService, uiImageQt::SliceIndexPositionEditor, uiImageQt::ImageTransparency, and ctrlSelection::ImageUpdateAxis.

Definition at line 922 of file IService.cpp.

References fwData::Object::s_MODIFIED_SIG, and s_UPDATE_SLOT.

Referenced by getAutoConnections().

+ Here is the caller graph for this function:

template<class DATATYPE >
std::shared_ptr< DATATYPE > fwServices::IService::getOutput ( const KeyType &  key) const

Return the output object at the given key. Asserts if the data is not of the right type.

Parameters
keyname of the data to retrieve.
Returns
object cast in the right type, nullptr if not found.

Definition at line 63 of file IService.hxx.

References OSLM_ASSERT, and SPTR.

template<class DATATYPE >
std::shared_ptr< DATATYPE > fwServices::IService::getOutput ( const KeyType &  keybase,
size_t  index 
) const

Return the output object at the given key. Asserts if the data is not of the right type.

Parameters
keyname of the data to retrieve.
Returns
object cast in the right type, nullptr if not found.

Definition at line 106 of file IService.hxx.

References OSLM_ASSERT, and SLM_ASSERT.

const IService::OutputMapType & fwServices::IService::getOutputs ( ) const
inline

Return the outouts map associated to service.

Returns
m_outputsMap

Definition at line 148 of file IService.hxx.

IService::GlobalStatus fwServices::IService::getStatus ( ) const
noexcept

Return the global process status.

Returns
m_globalState

Definition at line 376 of file IService.cpp.

Referenced by fwRenderVTK::IAdaptor::requestRender().

+ Here is the caller graph for this function:

IService::UpdatingStatus fwServices::IService::getUpdatingStatus ( ) const
noexcept

Return the update process status.

Returns
m_updatingState

Definition at line 404 of file IService.cpp.

bool fwServices::IService::hasObjectId ( const KeyType &  _key) const

Return true if the object with the given key has an identifier.

Parameters
_keyobject key

Definition at line 164 of file IService.cpp.

void fwServices::IService::info ( std::ostream &  _sstream)
protectedvirtual

Write information in a stream.

This method is used by operator<<(std::ostream & _sstream, IService& _service) to avoid declaration of << by all services.

Reimplemented in guiQt::editor::DynamicView, ioGdcm::SSeriesDBReader, guiQt::editor::SDynamicView, ioPacs::SSliceIndexDicomPullerEditor, ioVTK::SImageWriter, ioData::MeshWriterService, ioData::SplineReaderService, uiIO::editor::SIOSelector, ioQt::SPdfWriter, gui::action::SStarter, ioVTK::SSeriesDBReader, ioPacs::SPacsConfigurationEditor, ioVTK::SModelSeriesObjWriter, uiImageQt::WindowLevel, uiPreferences::action::SPreferencesConfiguration, ioDicom::SSliceIndexDicomEditor, ioPacs::SSeriesPuller, ioVTK::SModelSeriesWriter, ioVTK::SMeshWriter, ioData::STrianMeshReader, ioVTK::SModelSeriesReader, ioVTK::SImageSeriesWriter, uiImageQt::SliceIndexPositionEditor, gui::aspect::SDefaultToolBar, ioDicom::SFilterSelectionEditor, ioVTK::SImageReader, ioVTK::SMeshReader, ioData::SAttachmentSeriesReader, ioVTK::SImageSeriesReader, guiQt::editor::SSelectionMenuButton, ioData::TransformationMatrix3DReaderService, guiQt::editor::SSignalButton, uiIO::action::SExportWithSeriesDB, uiMedDataQt::SSeriesViewer, ioTuto::ExternalDataReaderService, uiMedDataQt::editor::SSelector, ioData::TransformationMatrix3DWriterService, ioPacs::SSeriesPusher, fwServices::SConfigController, uiIO::action::SSeriesDBMerger, ioDcmtk::SSeriesDBReader, ioGdcm::SDicomSeriesDBReader, ioVtkGdcm::SSeriesDBReader, ioVtkGdcm::SSeriesDBLazyReader, uiMedDataQt::action::SExportSeries, uiImageQt::ImageTransparency, uiVisuQt::SnapshotEditor, ctrlSelection::updater::SObjFromSlot, ioGdcm::SDicomSeriesConverter, guiQt::editor::Code, ioDicom::SFilterSelectorDialog, monitorQt::DumpEditor, ctrlSelection::wrapper::SImageSignalForwarder, ioPacs::SPacsConfigurationInitializer, ioPacs::SQueryEditor, Tuto14MeshGenerator::SMeshModifier, ctrlSelection::ImageUpdateAxis, ioGdcm::SDicomSeriesAnonymizer, gui::action::SSignal, ioPacs::SProgressBarController, uiImageQt::ImageInfo, ioITK::JpgImageWriterService, ioITK::InrImageReaderService, uiGenericQt::action::SShowAbout, uiVisu::action::CrossTypeAction, uiVisu::action::SSnapshot, gui::frame::SDefaultFrame, gui::view::SDefaultView, gui::editor::SJobBar, ioITK::InrImageWriterService, ioITK::SJpgImageSeriesWriter, gui::action::SDoNothing, ioDicom::SSeriesDBMerger, uiMeasurement::action::ShowDistance, gui::action::SModifyLayout, ctrlSelection::MedicalImageSrv, ioITK::SImageSeriesWriter, gui::action::SQuit, ctrlSelection::BookmarkSrv, uiVisuQt::PointEditor, uiMedDataQt::action::SInitNewSeries, gui::action::SSlotCaller, ctrlMemory::LockDumpSrv, uiGenericQt::action::LaunchBrowserActionService, uiGenericQt::action::ShowHelpContents, gui::action::SDefault, uiMeasurement::action::LoadLandmark, uiMeasurement::action::RemoveLandmark, uiMeasurement::action::SaveLandmark, uiMeasurement::action::ShowLandmark, uiMeasurement::action::AddLandmark, and uiMeasurement::action::SAddLabeledPoint.

Definition at line 74 of file IService.cpp.

Referenced by visuVTKAdaptor::SImagesBlend::checkImageInformations(), visuVTKAdaptor::SImagesBlend::configuring(), fwGui::view::IActivityView::createMainActivity(), visuVTKAdaptor::SImagesBlend::getAutoConnections(), ioTuto::ExternalDataReaderService::info(), ioData::TransformationMatrix3DReaderService::info(), ioData::SAttachmentSeriesReader::info(), ioData::STrianMeshReader::info(), ioQt::SPdfWriter::info(), ioData::SplineReaderService::info(), ioData::MeshWriterService::info(), fwServices::operator<<(), uiMeasurement::SManageLandmark::updating(), guiQt::editor::SActivityView::updating(), activities::SActivitySequencer::updating(), uiMedDataQt::editor::SActivityWizard::updating(), and fwGui::view::IActivityView::validateActivity().

+ Here is the caller graph for this function:

bool fwServices::IService::isStarted ( ) const
noexcept

Test if the service is started or not.

Returns
true if m_globalState == STARTED

Definition at line 383 of file IService.cpp.

References STARTED.

Referenced by ctrlSelection::SManage::addOrSwap(), ctrlSelection::SManage::clear(), ctrlSelection::SManage::remove(), ctrlSelection::SManage::removeIfPresent(), and ctrlSelection::SManage::swap().

+ Here is the caller graph for this function:

bool fwServices::IService::isStopped ( ) const
noexcept

Test if the service is stopped or not.

Returns
true if m_globalState == STOPPED

Definition at line 390 of file IService.cpp.

References STOPPED.

Referenced by ioVtkGdcm::SSeriesDBReader::updating().

+ Here is the caller graph for this function:

void fwServices::IService::reconfiguring ( )
protectedvirtual

Reconfigure the service activity when is started.

See also
configure()

Reimplemented in ctrlSelection::ImageUpdateAxis, ctrlSelection::BookmarkSrv, ctrlSelection::MedicalImageSrv, and ctrlMemory::LockDumpSrv.

Definition at line 297 of file IService.cpp.

References getClassname(), fwTools::fwID::getID(), and OSLM_FATAL.

Referenced by configure().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void fwServices::IService::registerInOut ( const ::fwData::Object::sptr &  obj,
const std::string &  key,
const bool  autoConnect = false,
const bool  optional = false 
)

Register an in/out object for this service.

Parameters
[in]objin/out object used by the service
[in]keykey of the object in the new adaptor
[in]autoConnectif true, the service will be connected to the object's signals
[in]optionalif true, the service can be started even if the objet is not present
Returns

Definition at line 148 of file IService.cpp.

void fwServices::IService::registerInput ( const ::fwData::Object::csptr &  obj,
const std::string &  key,
const bool  autoConnect = false,
const bool  optional = false 
)

Register an input object for this service.

Parameters
[in]objinput object used by the service
[in]keykey of the object in the new adaptor
[in]autoConnectif true, the service will be connected to the object's signals
[in]optionalif true, the service can be started even if the objet is not present
Returns

Definition at line 132 of file IService.cpp.

void fwServices::IService::setConfiguration ( const ::fwRuntime::ConfigurationElement::sptr  _cfgElement)

Affect the configuration, using a generic XML like structure.

Parameters
[in]_cfgElementa structure which represents the xml configuration
Postcondition
m_configurationState == UNCONFIGURED

Definition at line 202 of file IService.cpp.

References m_configuration, SLM_ASSERT, and UNCONFIGURED.

Referenced by setConfiguration().

+ Here is the caller graph for this function:

void fwServices::IService::setConfiguration ( const Config _configuration)

Set the configuration.

Parameters
[in]_configurationwhole configuration of the service.
Postcondition
m_configurationState == UNCONFIGURED

Definition at line 211 of file IService.cpp.

References m_configuration, SLM_ASSERT, and UNCONFIGURED.

void fwServices::IService::setConfiguration ( const ConfigType &  ptree)

Affect the configuration, using a boost property tree.

Parameters
[in]ptreeproperty tree
Postcondition
m_configurationState == UNCONFIGURED

Definition at line 224 of file IService.cpp.

References setConfiguration(), and SLM_ASSERT.

+ Here is the call graph for this function:

void fwServices::IService::setOutput ( const ::fwServices::IService::KeyType &  key,
const ::fwData::Object::sptr &  object,
size_t  index = 0 
)

Register an output object at a given key in the OSR, replacing it if it already exists.

Parameters
keyname of the data or the group to register.
objectpointer to the object to register.
indexoptional index of the key in the case of a member of a group of keys.

Definition at line 80 of file IService.cpp.

References fwServices::OSR::isRegistered().

Referenced by ctrlSelection::updater::SObjFromSlot::add(), ctrlSelection::updater::SObjFromSlot::addOrSwap(), ioDicom::SSliceIndexDicomEditor::readImage(), ioPacs::SSliceIndexDicomPullerEditor::readImage(), ctrlSelection::updater::SObjFromSlot::remove(), ctrlSelection::updater::SObjFromSlot::removeIfPresent(), visuVTKAdaptor::SSnapshot::stopping(), ctrlCamp::SExtractObj::stopping(), ctrlCamp::SCopy::stopping(), ctrlCamp::SExtractMeshByType::stopping(), ioAtoms::SReader::stopping(), ctrlSelection::updater::SObjFromSlot::swap(), uiTF::TransferFunctionEditor::updateTransferFunction(), opVTKMesh::SVTKMesher::updating(), opImageFilter::SThreshold::updating(), gui::action::SPushObject::updating(), gui::action::SPushField::updating(), ctrlCamp::SExtractObj::updating(), ctrlCamp::SExtractMeshByType::updating(), ioDicomWeb::SSliceIndexDicomPullerEditor::updating(), uiIO::editor::SIOSelector::updating(), and ioAtoms::SReader::updating().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

IService::SharedFutureType fwServices::IService::start ( )

Invoke starting() if m_globalState == STOPPED. Does nothing otherwise.

Postcondition
m_globalState == STARTED

Definition at line 306 of file IService.cpp.

References fwThread::getCurrentThreadId(), m_associatedWorker, and m_slotStart.

+ Here is the call graph for this function:

virtual FWSERVICES_API void fwServices::IService::starting ( )
protectedpure virtual

Initialize the service activity.

Use configuration to start his job. For example : the start method installs a button in a frame and show the frame.

See also
start()

Implemented in visuVTKAdaptor::SMesh, activities::action::SActivityLauncher, fwRenderVTK::SRender, fwRenderQt::SRender, gui::action::SStarter, ioGdcm::SSeriesDBReader, guiQt::editor::SParameters, uiMedDataQt::editor::SActivityWizard, ioPacs::SSliceIndexDicomPullerEditor, ctrlSelection::SManage, guiQt::editor::DynamicView, ioAtoms::SReader, visuVTKAdaptor::SNegatoMPR, visuVTKAdaptor::SMeshNormals, ioDicomWeb::SSliceIndexDicomPullerEditor, guiQt::editor::SDynamicView, ioPacs::SPacsConfigurationEditor, ioAtoms::SWriter, ioDicom::SSliceIndexDicomEditor, ioPacs::SSeriesPuller, uiIO::editor::SIOSelector, visuVTKAdaptor::SImageSlice, visuVTKAdaptor::SImagesBlend, visuVTKAdaptor::SReconstruction, visuVTKVRAdaptor::SVolume, uiMedDataQt::editor::SModelSeriesList, uiPreferences::action::SPreferencesConfiguration, visuVTKAdaptor::SImage, visuVTKAdaptor::SNegatoSlicingInteractor, ioVTK::SImageWriter, vtkSimpleMesh::SRenderer, guiQt::editor::SSlider, visuVTKAdaptor::SModelSeries, visuVTKAdaptor::SNegatoOneSlice, visuVTKAdaptor::SPlane, ioDicom::SFilterSelectionEditor, activities::SActivitySequencer, gui::action::SModifyLayout, uiIO::action::SExportWithSeriesDB, visuVTKAdaptor::SText, uiImageQt::WindowLevel, ioData::MeshWriterService, guiQt::editor::SListView, visuVTKAdaptor::SPickerInteractor, ioVTK::SImageReader, ioVTK::SSeriesDBReader, gui::action::SConfigLauncher, ioPacs::SSeriesPusher, ioVTK::SModelSeriesObjWriter, uiIO::action::SSeriesDBMerger, uiMeasurementQt::editor::SLandmarks, uiMedDataQt::editor::SSelector, visuVTKAdaptor::SImageSeries, activities::SSeriesSignal, guiQt::editor::SSelectionMenuButton, activities::editor::SCreateActivity, basicRegistration::SPointListRegistration, scene2D::adaptor::SNegato, visuVTKAdaptor::SPoint, ioDcmtk::SSeriesDBReader, ioVTK::SModelSeriesWriter, ioGdcm::SDicomSeriesDBReader, ioVTK::SMeshWriter, guiQt::editor::SActivityView, visuVTKAdaptor::SLandmarks, activities::action::SCreateActivity, ioQt::SPdfWriter, guiQt::editor::SSignalButton, visuVTKAdaptor::SImageText, visuVTKAdaptor::SPlaneList, ioVTK::SImageSeriesWriter, ioVTK::SModelSeriesReader, visuVTKAdaptor::SSlicesCursor, uiMedDataQt::editor::SSeries, ioDicomWeb::SSeriesPuller, uiTF::TransferFunctionEditor, visuVTKAdaptor::STexture, vtkCompositeMesh::RendererService, ioData::SplineReaderService, ioData::STrianMeshReader, gui::editor::SJobBar, ioVTK::SImageSeriesReader, ioVTK::SMeshReader, ioVtkGdcm::SSeriesDBReader, gui::aspect::SDefaultMenu, gui::aspect::SDefaultMenuBar, uiMedDataQt::SSeriesViewer, visuVTKAdaptor::SImagePickerInteractor, uiImageQt::SliceIndexPositionEditor, uiMeasurementQt::editor::Distance, scene2D::adaptor::STransferFunction, visuVTKAdaptor::SLine, visuVTKAdaptor::SPointList, ioVtkGdcm::SImageSeriesWriter, visuVTKAdaptor::SProbeCursor, ioData::SAttachmentSeriesReader, ioData::TransformationMatrix3DReaderService, ioVtkGdcm::SSeriesDBLazyReader, uiMedDataQt::action::SExportSeries, visuVTKAdaptor::SImage3DCursor, visuVTKAdaptor::SMeshesBoxWidget, ctrlCamp::SExtractMeshByType, ioDicomWeb::SSeriesPusher, visuVTKAdaptor::STransform, fwServices::IXMLParser, ioDicomWeb::SQueryEditor, uiMeasurement::SManageLandmark, scene2D::processing::SComputeHistogram, ioGdcm::SDicomSeriesWriter, scene2D::adaptor::SGrid2D, ioData::TransformationMatrix3DWriterService, ctrlHistory::SCommandHistory, ctrlSelection::updater::SObjFromSlot, ioGdcm::SDicomSeriesConverter, uiImageQt::ImageTransparency, scene2D::adaptor::SCurvedHistogram, scene2D::adaptor::SScaleValues, visuVTKAdaptor::SAxis, gui::action::SSlotCaller, ctrlCamp::SCopy, ctrlCamp::SExtractObj, ioGdcm::SSurfaceSegmentationWriter, ioPacs::SPacsConfigurationInitializer, ioPacs::SQueryEditor, visuVTKAdaptor::SImageSliceOrientationText, visuVTKAdaptor::SNegatoWindowingInteractor, scene2D::adaptor::SHistogramCursor, scene2D::adaptor::SViewportRangeSelector, visuVTKAdaptor::SImagesProbeCursor, visuVTKAdaptor::SPlaneInteractor, vtkSimpleNegato::SRenderer, gui::action::SPushField, gui::action::SPushObject, ioITK::SInrSeriesDBReader, scene2D::adaptor::SHistogramValue, visuVTKAdaptor::SMaterial, fwServices::SConfigController, ioGdcm::SDicomSeriesAnonymizer, uiReconstructionQt::RepresentationEditor, Tuto14MeshGenerator::SMeshModifier, gui::action::SSignal, ioGdcm::SSeriesDBWriter, ioPacs::SProgressBarController, guiQt::editor::Code, guiQt::SSignalShortcut, uiVisuQt::STransformEditor, visuVTKAdaptor::S2DWheel, visuVTKAdaptor::SDistance, visuVTKAdaptor::SImageMultiDistances, monitorQt::DumpEditor, uiMedDataQt::editor::SOrganTransformation, visuVTKAdaptor::SMedical3DCamera, uiGenericQt::action::SShowAbout, uiImageQt::ImageInfo, scene2D::adaptor::SHistogram, ctrlSelection::wrapper::SImageSignalForwarder, ioITK::JpgImageWriterService, opVTKMesh::action::SMeshCreation, uiIO::action::SFolderSelector, scene2D::adaptor::SAxis, visuVTKAdaptor::SResection, vtkSimpleMesh::SSimpleMeshDeformation, ctrlSelection::SAddField, ioDicom::SFilterSelectorDialog, basicRegistration::SImagesSubstract, uiReconstructionQt::OrganMaterialEditor, scene2D::adaptor::SLine, visuVTKAdaptor::SVectorField, opImageFilter::SThreshold, uiMeasurement::action::SFocusLandmark, uiMeasurement::action::ShowDistance, visuVTKAdaptor::SBoxWidget, visuVTKAdaptor::SSliceFollowerCamera, ioDicom::SSeriesDBMerger, ioITK::InrImageWriterService, uiVisuQt::SnapshotEditor, scene2D::adaptor::SViewportUpdater, visuVTKAdaptor::SCamera, visuVTKAdaptor::SLabeledPointList, ioITK::InrImageReaderService, ioITK::SJpgImageSeriesWriter, scene2D::adaptor::SSquare, visuVTKAdaptor::SSnapshot, gui::action::SDoNothing, gui::frame::SDefaultFrame, gui::view::SDefaultView, monitor::action::MemoryConsumption, opVTKMesh::SVTKMesher, visuVTKAdaptor::SPointLabel, visuVTKAdaptor::SResectionDB, preferences::SPreferences, ioTuto::ExternalDataReaderService, gui::aspect::SDefaultToolBar, uiGenericQt::action::LaunchBrowserActionService, uiMeasurement::action::RemoveDistance, uiVisu::action::SSnapshot, visuVTKAdaptor::SInteractorStyle, ioITK::SImageSeriesWriter, Tuto16MultithreadConsole::SIncrementArray, gui::action::SDefault, gui::action::SQuit, memory::SDumpPolicy, uiVisuQt::PointEditor, uiGenericQt::action::ShowHelpContents, uiMeasurement::action::LoadLandmark, uiMeasurement::action::RemoveLandmark, uiMeasurement::action::SaveLandmark, uiVisu::action::CrossTypeAction, visuVTKAdaptor::SOrientationMarker, Tuto16MultithreadConsole::SShowArray, ctrlMemory::LockDumpSrv, monitorQt::action::ComponentsTree, uiMeasurement::action::AddLandmark, uiMeasurement::action::SAddLabeledPoint, uiMeasurement::action::ShowLandmark, ctrlSelection::ImageUpdateAxis, scene2D::adaptor::SViewportInteractor, visuVTKAdaptor::SCube, ctrlSelection::MedicalImageSrv, monitorQt::action::ClassFactoryRegistryInfo, uiMeasurement::action::AddDistance, Tuto16MultithreadConsole::SReadArray, monitor::action::fwMetrics, monitor::action::MemoryInfo, monitor::action::SDumpAll, uiMedDataQt::action::SInitNewSeries, and ctrlSelection::BookmarkSrv.

Referenced by getAutoConnections(), and ctrlSelection::IManagerSrv::swapping().

+ Here is the caller graph for this function:

IService::SharedFutureType fwServices::IService::stop ( )

Invoke stopping() if m_globalState == STARTED. Does nothing otherwise. Stops all observations.

Postcondition
m_globalState == STOPPED

Definition at line 320 of file IService.cpp.

References fwThread::getCurrentThreadId(), m_associatedWorker, and m_slotStop.

+ Here is the call graph for this function:

virtual FWSERVICES_API void fwServices::IService::stopping ( )
protectedpure virtual

Uninitialize the service activity. The stop() method is always invoked before destroying a service.

See also
stop()

Implemented in visuVTKAdaptor::SMesh, activities::action::SActivityLauncher, fwRenderVTK::SRender, fwRenderQt::SRender, gui::action::SStarter, ioGdcm::SSeriesDBReader, guiQt::editor::SParameters, uiMedDataQt::editor::SActivityWizard, ioPacs::SSliceIndexDicomPullerEditor, ctrlSelection::SManage, guiQt::editor::DynamicView, ioAtoms::SReader, visuVTKAdaptor::SNegatoMPR, visuVTKAdaptor::SMeshNormals, guiQt::editor::SDynamicView, ioDicomWeb::SSliceIndexDicomPullerEditor, ioPacs::SPacsConfigurationEditor, vtkSimpleMesh::SRenderer, ioAtoms::SWriter, ioDicom::SSliceIndexDicomEditor, ioPacs::SSeriesPuller, uiIO::editor::SIOSelector, visuVTKAdaptor::SImageSlice, ioVTK::SImageWriter, visuVTKAdaptor::SImagesBlend, visuVTKAdaptor::SReconstruction, uiMedDataQt::editor::SModelSeriesList, uiPreferences::action::SPreferencesConfiguration, visuVTKVRAdaptor::SVolume, visuVTKAdaptor::SImage, visuVTKAdaptor::SNegatoSlicingInteractor, guiQt::editor::SSlider, ioData::MeshWriterService, ioDicom::SFilterSelectionEditor, visuVTKAdaptor::SModelSeries, visuVTKAdaptor::SNegatoOneSlice, visuVTKAdaptor::SPlane, uiIO::action::SExportWithSeriesDB, activities::SActivitySequencer, uiImageQt::WindowLevel, vtkCompositeMesh::RendererService, ioVTK::SSeriesDBReader, gui::action::SModifyLayout, ioVTK::SModelSeriesObjWriter, uiMeasurementQt::editor::SLandmarks, visuVTKAdaptor::SText, guiQt::editor::SListView, uiIO::action::SSeriesDBMerger, visuVTKAdaptor::SImageSeries, visuVTKAdaptor::SPickerInteractor, ioVTK::SImageReader, ioVTK::SModelSeriesWriter, guiQt::editor::SSelectionMenuButton, gui::action::SConfigLauncher, ioPacs::SSeriesPusher, ioVTK::SMeshWriter, uiMedDataQt::editor::SSelector, activities::SSeriesSignal, ioQt::SPdfWriter, activities::editor::SCreateActivity, ioVTK::SImageSeriesWriter, ioVTK::SModelSeriesReader, basicRegistration::SPointListRegistration, ioData::SplineReaderService, ioDcmtk::SSeriesDBReader, guiQt::editor::SSignalButton, scene2D::adaptor::SNegato, visuVTKAdaptor::SPoint, ioGdcm::SDicomSeriesDBReader, guiQt::editor::SActivityView, activities::action::SCreateActivity, ioData::STrianMeshReader, uiTF::TransferFunctionEditor, visuVTKAdaptor::SLandmarks, visuVTKAdaptor::SImageText, visuVTKAdaptor::SPlaneList, uiMedDataQt::editor::SSeries, visuVTKAdaptor::SSlicesCursor, ioDicomWeb::SSeriesPuller, ioVTK::SImageSeriesReader, ioVTK::SMeshReader, scene2D::adaptor::STransferFunction, visuVTKAdaptor::STexture, gui::aspect::SDefaultMenu, gui::aspect::SDefaultMenuBar, ioData::SAttachmentSeriesReader, uiMeasurementQt::editor::Distance, gui::editor::SJobBar, ioData::TransformationMatrix3DReaderService, ioVtkGdcm::SSeriesDBReader, uiImageQt::SliceIndexPositionEditor, scene2D::processing::SComputeHistogram, uiMedDataQt::SSeriesViewer, ctrlCamp::SExtractMeshByType, visuVTKAdaptor::SImagePickerInteractor, visuVTKAdaptor::STransform, ioVtkGdcm::SImageSeriesWriter, visuVTKAdaptor::SLine, visuVTKAdaptor::SPointList, fwServices::IXMLParser, ioData::TransformationMatrix3DWriterService, ioVtkGdcm::SSeriesDBLazyReader, uiMedDataQt::action::SExportSeries, visuVTKAdaptor::SProbeCursor, ioDicomWeb::SSeriesPusher, scene2D::adaptor::SGrid2D, visuVTKAdaptor::SMeshesBoxWidget, ctrlHistory::SCommandHistory, ioDicomWeb::SQueryEditor, uiMeasurement::SManageLandmark, visuVTKAdaptor::SImage3DCursor, ioGdcm::SDicomSeriesWriter, scene2D::adaptor::SScaleValues, ctrlCamp::SCopy, ctrlCamp::SExtractObj, vtkSimpleNegato::SRenderer, ctrlSelection::updater::SObjFromSlot, ioGdcm::SDicomSeriesConverter, uiImageQt::ImageTransparency, ioGdcm::SSurfaceSegmentationWriter, ioITK::SInrSeriesDBReader, ioPacs::SPacsConfigurationInitializer, ioPacs::SQueryEditor, scene2D::adaptor::SCurvedHistogram, visuVTKAdaptor::SAxis, gui::action::SSlotCaller, visuVTKAdaptor::S2DWheel, visuVTKAdaptor::SImageSliceOrientationText, visuVTKAdaptor::SNegatoWindowingInteractor, gui::action::SPushField, gui::action::SPushObject, guiQt::SSignalShortcut, scene2D::adaptor::SHistogramCursor, scene2D::adaptor::SViewportRangeSelector, visuVTKAdaptor::SImagesProbeCursor, visuVTKAdaptor::SPlaneInteractor, fwServices::SConfigController, ioGdcm::SDicomSeriesAnonymizer, uiGenericQt::action::SShowAbout, uiReconstructionQt::RepresentationEditor, scene2D::adaptor::SHistogramValue, visuVTKAdaptor::SMaterial, gui::action::SSignal, ioGdcm::SSeriesDBWriter, ioPacs::SProgressBarController, guiQt::editor::Code, uiVisuQt::STransformEditor, Tuto14MeshGenerator::SMeshModifier, monitorQt::DumpEditor, uiIO::action::SFolderSelector, visuVTKAdaptor::SDistance, visuVTKAdaptor::SImageMultiDistances, vtkSimpleMesh::SSimpleMeshDeformation, uiImageQt::ImageInfo, scene2D::adaptor::SLine, visuVTKAdaptor::SMedical3DCamera, uiMedDataQt::editor::SOrganTransformation, ctrlSelection::wrapper::SImageSignalForwarder, ioITK::JpgImageWriterService, ioTuto::ExternalDataReaderService, scene2D::adaptor::SHistogram, ctrlSelection::SAddField, ioDicom::SFilterSelectorDialog, opVTKMesh::action::SMeshCreation, basicRegistration::SImagesSubstract, uiMeasurement::action::ShowDistance, uiReconstructionQt::OrganMaterialEditor, visuVTKAdaptor::SResection, uiMeasurement::action::SFocusLandmark, uiVisuQt::SnapshotEditor, scene2D::adaptor::SAxis, visuVTKAdaptor::SVectorField, gui::frame::SDefaultFrame, gui::view::SDefaultView, monitor::action::MemoryConsumption, ioDicom::SSeriesDBMerger, ioITK::InrImageReaderService, opImageFilter::SThreshold, visuVTKAdaptor::SBoxWidget, visuVTKAdaptor::SSliceFollowerCamera, ioITK::InrImageWriterService, gui::aspect::SDefaultToolBar, ioITK::SJpgImageSeriesWriter, uiGenericQt::action::LaunchBrowserActionService, scene2D::adaptor::SViewportUpdater, visuVTKAdaptor::SCamera, visuVTKAdaptor::SLabeledPointList, scene2D::adaptor::SSquare, visuVTKAdaptor::SOrientationMarker, visuVTKAdaptor::SSnapshot, gui::action::SDoNothing, preferences::SPreferences, opVTKMesh::SVTKMesher, uiMeasurement::action::RemoveDistance, visuVTKAdaptor::SPointLabel, visuVTKAdaptor::SResectionDB, uiGenericQt::action::ShowHelpContents, uiVisu::action::SSnapshot, ioITK::SImageSeriesWriter, visuVTKAdaptor::SInteractorStyle, Tuto16MultithreadConsole::SIncrementArray, memory::SDumpPolicy, monitorQt::action::ComponentsTree, uiMeasurement::action::LoadLandmark, uiMeasurement::action::RemoveLandmark, uiMeasurement::action::SaveLandmark, uiVisuQt::PointEditor, gui::action::SDefault, gui::action::SQuit, uiVisu::action::CrossTypeAction, Tuto16MultithreadConsole::SShowArray, ctrlMemory::LockDumpSrv, monitorQt::action::ClassFactoryRegistryInfo, uiMeasurement::action::AddLandmark, uiMeasurement::action::SAddLabeledPoint, uiMeasurement::action::ShowLandmark, scene2D::adaptor::SViewportInteractor, ctrlSelection::ImageUpdateAxis, uiMeasurement::action::AddDistance, ctrlSelection::MedicalImageSrv, visuVTKAdaptor::SCube, monitor::action::fwMetrics, monitor::action::MemoryInfo, monitor::action::SDumpAll, Tuto16MultithreadConsole::SReadArray, uiMedDataQt::action::SInitNewSeries, and ctrlSelection::BookmarkSrv.

Referenced by getAutoConnections(), and ctrlSelection::IManagerSrv::swapping().

+ Here is the caller graph for this function:

IService::SharedFutureType fwServices::IService::swap ( ::fwData::Object::sptr  _obj)

Associate the service to another object.

Parameters
[in]_objchange association service from m_associatedObject to _obj
Precondition
m_globalState == STARTED
m_associatedObject != _obj
Deprecated:
Use getAutoConnections() instead

This method provides to associate the service to another object without stopping and deleting it. Furthermore, this method modify all observations to be aware to _obj notifications.

Definition at line 348 of file IService.cpp.

References fwThread::getCurrentThreadId(), m_associatedWorker, and m_slotSwap.

+ Here is the call graph for this function:

IService::SharedFutureType fwServices::IService::swapKey ( const KeyType &  _key,
::fwData::Object::sptr  _obj 
)

Associate the service to another object.

Parameters
[in]_objchange association service from m_associatedObject to _obj
Precondition
m_globalState == STARTED
m_associatedObject != _obj

This method provides to associate the service to another object without stopping and deleting it. Furthermore, this method modify all observations to be aware to _obj notifications.

Definition at line 362 of file IService.cpp.

References fwThread::getCurrentThreadId(), m_associatedWorker, and m_slotSwapKey.

+ Here is the call graph for this function:

virtual void fwServices::IService::swapping ( const KeyType &  key)
inlineprotectedvirtual

Swap the service from an associated object to another object. The key in parameter indicates allows to retrieve the new data with getInput(), getInOut() or getOutput(). If you need the old object, you need to keep a shared pointer on it inside your service implementation.

Parameters
keyof the object
See also
swapKey()

Reimplemented in fwRenderQt::SRender, visuVTKAdaptor::SNegatoMPR, visuVTKAdaptor::SImagesBlend, visuVTKVRAdaptor::SVolume, visuVTKAdaptor::SImage, uiImageQt::WindowLevel, visuVTKAdaptor::SNegatoOneSlice, scene2D::adaptor::SNegato, uiTF::TransferFunctionEditor, visuVTKAdaptor::SImageText, and visuVTKAdaptor::SNegatoWindowingInteractor.

Definition at line 627 of file IService.hpp.

IService::SharedFutureType fwServices::IService::update ( )

Invoke updating() if m_globalState == STARTED. Does nothing otherwise.

Precondition
m_globalState == STARTED

Definition at line 334 of file IService.cpp.

References fwThread::getCurrentThreadId(), m_associatedWorker, and m_slotUpdate.

Referenced by scene2D::adaptor::SViewportRangeSelector::processInteraction().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual FWSERVICES_API void fwServices::IService::updating ( )
protectedpure virtual

Perform some computations according to object (this service is attached to) attribute values and its internal state.

See also
update()

Implemented in activities::action::SActivityLauncher, fwRenderVTK::SRender, visuVTKAdaptor::SMesh, ioGdcm::SSeriesDBReader, fwRenderQt::SRender, guiQt::editor::SParameters, uiMedDataQt::editor::SActivityWizard, guiQt::editor::DynamicView, ioPacs::SSliceIndexDicomPullerEditor, ctrlSelection::SManage, ioAtoms::SReader, gui::action::SStarter, uiIO::editor::SIOSelector, ioVTK::SImageWriter, guiQt::editor::SDynamicView, vtkSimpleMesh::SRenderer, ioDicomWeb::SSliceIndexDicomPullerEditor, visuVTKAdaptor::SNegatoMPR, ioAtoms::SWriter, ioData::MeshWriterService, ioData::SplineReaderService, ioPacs::SPacsConfigurationEditor, visuVTKAdaptor::SMeshNormals, ioQt::SPdfWriter, ioDicom::SSliceIndexDicomEditor, ioPacs::SSeriesPuller, ioVTK::SSeriesDBReader, ioVTK::SModelSeriesObjWriter, uiPreferences::action::SPreferencesConfiguration, activities::SActivitySequencer, ioVTK::SModelSeriesWriter, uiMedDataQt::editor::SModelSeriesList, ioVTK::SMeshWriter, visuVTKAdaptor::SImageSlice, visuVTKVRAdaptor::SVolume, visuVTKAdaptor::SImagesBlend, visuVTKAdaptor::SReconstruction, vtkCompositeMesh::RendererService, ioVTK::SImageSeriesWriter, ioVTK::SModelSeriesReader, guiQt::editor::SSlider, ioDicom::SFilterSelectionEditor, ioVTK::SImageReader, visuVTKAdaptor::SImage, ioData::STrianMeshReader, uiMedDataQt::editor::SSeries, visuVTKAdaptor::SNegatoSlicingInteractor, uiImageQt::WindowLevel, visuVTKAdaptor::SModelSeries, visuVTKAdaptor::SNegatoOneSlice, visuVTKAdaptor::SPlane, uiMeasurementQt::editor::SLandmarks, ioVTK::SImageSeriesReader, ioVTK::SMeshReader, guiQt::editor::SListView, uiMedDataQt::editor::SSelector, gui::action::SConfigLauncher, uiIO::action::SExportWithSeriesDB, guiQt::editor::SSelectionMenuButton, ioData::SAttachmentSeriesReader, ioPacs::SSeriesPusher, visuVTKAdaptor::SText, activities::SSeriesSignal, guiQt::editor::SSignalButton, activities::editor::SCreateActivity, ioData::TransformationMatrix3DReaderService, basicRegistration::SPointListRegistration, visuVTKAdaptor::SPickerInteractor, activities::action::SCreateActivity, ioDcmtk::SSeriesDBReader, uiIO::action::SSeriesDBMerger, visuVTKAdaptor::SImageSeries, ioGdcm::SDicomSeriesDBReader, guiQt::editor::SActivityView, uiMedDataQt::SSeriesViewer, ioTuto::ExternalDataReaderService, ioData::TransformationMatrix3DWriterService, scene2D::adaptor::SNegato, visuVTKAdaptor::SPoint, fwServices::IXMLParser, ioDicomWeb::SSeriesPuller, visuVTKAdaptor::SLandmarks, ioVtkGdcm::SSeriesDBReader, visuVTKAdaptor::SImageText, visuVTKAdaptor::SPlaneList, gui::aspect::SDefaultMenu, gui::aspect::SDefaultMenuBar, uiMeasurementQt::editor::Distance, uiTF::TransferFunctionEditor, visuVTKAdaptor::SSlicesCursor, ioVtkGdcm::SImageSeriesWriter, uiImageQt::SliceIndexPositionEditor, ioVtkGdcm::SSeriesDBLazyReader, visuVTKAdaptor::STexture, ctrlCamp::SExtractMeshByType, vtkSimpleNegato::SRenderer, ioGdcm::SDicomSeriesWriter, uiMedDataQt::action::SExportSeries, scene2D::adaptor::STransferFunction, ioDicomWeb::SSeriesPusher, ioDicomWeb::SQueryEditor, ioITK::SInrSeriesDBReader, uiMeasurement::SManageLandmark, visuVTKAdaptor::SImagePickerInteractor, visuVTKAdaptor::SImage3DCursor, visuVTKAdaptor::SLine, visuVTKAdaptor::SPointList, dataReg::parser::TransferFunction, ctrlCamp::SCopy, ctrlCamp::SExtractObj, ioGdcm::SSurfaceSegmentationWriter, visuVTKAdaptor::SProbeCursor, visuVTKAdaptor::STransform, ctrlSelection::updater::SObjFromSlot, ioGdcm::SDicomSeriesConverter, scene2D::processing::SComputeHistogram, visuVTKAdaptor::SMeshesBoxWidget, ioDicom::SFilterSelectorDialog, ctrlSelection::wrapper::SImageSignalForwarder, ioPacs::SPacsConfigurationInitializer, ioPacs::SQueryEditor, guiQt::SSignalShortcut, uiImageQt::ImageTransparency, scene2D::adaptor::SGrid2D, gui::editor::SJobBar, ctrlHistory::SCommandHistory, ioGdcm::SSeriesDBWriter, gui::action::SPushField, gui::action::SPushObject, scene2D::adaptor::SScaleValues, Tuto14MeshGenerator::SMeshModifier, fwServices::SConfigController, ctrlSelection::ImageUpdateAxis, ioGdcm::SDicomSeriesAnonymizer, uiReconstructionQt::RepresentationEditor, gui::action::SSignal, ioPacs::SProgressBarController, guiQt::editor::Code, uiVisuQt::STransformEditor, scene2D::adaptor::SCurvedHistogram, visuVTKAdaptor::SAxis, ioITK::JpgImageWriterService, monitorQt::DumpEditor, visuVTKAdaptor::SImageSliceOrientationText, visuVTKAdaptor::SNegatoWindowingInteractor, vtkSimpleMesh::SSimpleMeshDeformation, gui::action::SModifyLayout, ioITK::InrImageReaderService, opVTKMesh::action::SMeshCreation, uiImageQt::ImageInfo, scene2D::adaptor::SHistogramCursor, scene2D::adaptor::SViewportRangeSelector, visuVTKAdaptor::SImagesProbeCursor, visuVTKAdaptor::SPlaneInteractor, dataReg::parser::Composite, uiMeasurement::action::SFocusLandmark, scene2D::adaptor::SHistogramValue, visuVTKAdaptor::S2DWheel, visuVTKAdaptor::SMaterial, dataReg::parser::List, opImageFilter::SThreshold, uiMedDataQt::editor::SOrganTransformation, gui::frame::SDefaultFrame, gui::view::SDefaultView, ctrlSelection::SAddField, ioITK::InrImageWriterService, basicRegistration::SImagesSubstract, uiGenericQt::action::SShowAbout, uiReconstructionQt::OrganMaterialEditor, visuVTKAdaptor::SDistance, visuVTKAdaptor::SImageMultiDistances, ioITK::SJpgImageSeriesWriter, uiVisuQt::SnapshotEditor, visuVTKAdaptor::SMedical3DCamera, gui::action::SSlotCaller, gui::aspect::SDefaultToolBar, ioDicom::SSeriesDBMerger, uiIO::action::SFolderSelector, scene2D::adaptor::SAxis, scene2D::adaptor::SHistogram, scene2D::adaptor::SLine, gui::action::SDoNothing, visuVTKAdaptor::SResection, ctrlSelection::BookmarkSrv, ctrlSelection::MedicalImageSrv, ioITK::SImageSeriesWriter, opVTKMesh::SVTKMesher, uiMeasurement::action::ShowDistance, visuVTKAdaptor::SVectorField, preferences::SPreferences, uiMedDataQt::action::SInitNewSeries, visuVTKAdaptor::SBoxWidget, visuVTKAdaptor::SSliceFollowerCamera, uiVisu::action::SSnapshot, gui::action::SBooleanSlotCaller, gui::action::SQuit, ctrlMemory::LockDumpSrv, monitor::action::MemoryConsumption, scene2D::adaptor::SViewportUpdater, visuVTKAdaptor::SCamera, visuVTKAdaptor::SLabeledPointList, Tuto16MultithreadConsole::SIncrementArray, memory::SDumpPolicy, scene2D::adaptor::SSquare, visuVTKAdaptor::SSnapshot, dataReg::parser::GenericField, dataReg::parser::TransformationMatrix3D, uiGenericQt::action::LaunchBrowserActionService, uiVisu::action::CrossTypeAction, uiVisuQt::PointEditor, visuVTKAdaptor::SPointLabel, visuVTKAdaptor::SResectionDB, Tuto16MultithreadConsole::SShowArray, gui::action::SDefault, uiMeasurement::action::RemoveDistance, visuVTKAdaptor::SInteractorStyle, visuVTKAdaptor::SOrientationMarker, uiGenericQt::action::ShowHelpContents, uiMeasurement::action::LoadLandmark, uiMeasurement::action::RemoveLandmark, uiMeasurement::action::SaveLandmark, monitorQt::action::ComponentsTree, uiMeasurement::action::AddLandmark, uiMeasurement::action::SAddLabeledPoint, uiMeasurement::action::ShowLandmark, Tuto16MultithreadConsole::SReadArray, dataReg::parser::Object, monitorQt::action::ClassFactoryRegistryInfo, scene2D::adaptor::SViewportInteractor, uiMeasurement::action::AddDistance, visuVTKAdaptor::SCube, monitor::action::fwMetrics, monitor::action::MemoryInfo, and monitor::action::SDumpAll.

Referenced by getAutoConnections(), and fwIO::IReader::hasLocationDefined().

+ Here is the caller graph for this function:

Friends And Related Function Documentation

FWSERVICES_API friend std::ostream& operator<< ( std::ostream &  _sstream,
IService _service 
)
friend

Streaming a service.

See also
IService::operator<<(std::ostream & _ostream, IService& _service)
Note
Invoke IService::info( std::ostream )

Definition at line 936 of file IService.cpp.

Member Data Documentation

::fwData::Object::wptr fwServices::IService::m_associatedObject
protected

associated object of service

Definition at line 676 of file IService.hpp.

Referenced by getAutoConnections(), getObject(), and getObjects().

const std::string fwServices::IService::s_DEFAULT_OBJECT = "defaultObject"
static

Name of the key to identify the default Composite object that is used for services that don't work on any data.

Remarks
For V1 compatibility purpose, this object is currently present on all services.

Definition at line 113 of file IService.hpp.

Referenced by getAutoConnections(), and fwServices::AppConfigManager::getConfigRoot().


The documentation for this class was generated from the following files: