fw4spl
|
This service displays a list of available readers or writers and lets you select one to load or save a data. More...
#include <SIOSelector.hpp>
Public Types | |
enum | IOMode { READER_MODE, WRITER_MODE } |
IOMode enum definition. More... | |
typedef ::fwCom::Signal< void(::fwJobs::IJob::sptr) > | JobCreatedSignalType |
typedef ::fwCom::Slot< void(::fwJobs::IJob::sptr) > | ForwardJobSlotType |
Public Types inherited from fwServices::IService | |
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 |
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... | |
typedef ::fwCom::Signal< void()> | StartedSignalType |
typedef ::fwCom::Signal< void()> | UpdatedSignalType |
typedef ::fwCom::Signal< void()> | StoppedSignalType |
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. | |
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... | |
Public Types inherited from fwCom::HasSlots | |
typedef std::shared_ptr< HasSlots > | sptr |
typedef std::shared_ptr< const HasSlots > | csptr |
Public Types inherited from fwCom::HasSignals | |
typedef std::shared_ptr< HasSignals > | sptr |
typedef std::shared_ptr< const HasSignals > | csptr |
Public Member Functions | |
virtual bool | isA (const std::string &type) const override |
UIIO_API | SIOSelector () |
Constructor. Do nothing (Just initialize parameters). More... | |
virtual UIIO_API | ~SIOSelector () noexcept |
Destructor. Do nothing. | |
UIIO_API void | setIOMode (IOMode _mode) |
This method allows to configure the service in reader or writer mode (set SIOSelector::m_mode). More... | |
Public Member Functions inherited from fwGui::editor::IDialogEditor | |
Public Member Functions inherited from fwServices::IService | |
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... | |
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... | |
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... | |
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. | |
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... | |
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::Worker > | getWorker () const |
Returns associate worker. | |
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... | |
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. | |
Public Member Functions inherited from fwTools::Object | |
Public Member Functions inherited from fwCore::BaseObject | |
Public Member Functions inherited from fwCom::HasSlots | |
std::shared_ptr< SlotBase > | slot (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< SignalBase > | signal (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 fwGui::editor::IDialogEditor | |
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 Member Functions inherited from fwServices::IService | |
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 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 | |
Protected Member Functions | |
UIIO_API void | starting () override |
Starts the service. Do nothing. | |
UIIO_API void | stopping () override |
Stops the service. Do nothing. | |
UIIO_API void | configuring () override |
This method initializes class member parameters from configuration elements. More... | |
UIIO_API void | updating () override |
Create a dialogue box to provide the user different available readers (writer) for the IOSelector associated. | |
UIIO_API void | info (std::ostream &_sstream) override |
Gives the name of the class. Do nothing. | |
Protected Member Functions inherited from fwServices::IService | |
FWSERVICES_API | IService () |
IService constructor. More... | |
virtual FWSERVICES_API | ~IService () |
IService desctructor. 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 | reconfiguring () |
Reconfigure the service activity when is started. 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. | |
HasSlots & | operator= (const HasSlots &) |
Copy operator forbidden. | |
Protected Member Functions inherited from fwCom::HasSignals | |
HasSignals (const HasSignals &) | |
Copy constructor forbidden. | |
HasSignals & | operator= (const HasSignals &) |
Copy operator forbidden. | |
Friends | |
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 | |
Additional Inherited Members | |
Static Public Attributes inherited from fwServices::IService | |
static FWSERVICES_API const std::string | s_DEFAULT_OBJECT = "defaultObject" |
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" |
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. | |
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::Object > | getObject (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 | |
Protected Attributes inherited from fwServices::IService | |
::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... | |
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::Worker > | m_associatedWorker |
Associated worker. | |
Protected Attributes inherited from fwTools::Object | |
std::shared_ptr< ::fwTools::UUID > | m_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 |
This service displays a list of available readers or writers and lets you select one to load or save a data.
Sample of configuration :
Readers can generate output data. In this case, you must define the type of the output data.
Definition at line 73 of file SIOSelector.hpp.
IOMode enum definition.
Enumerator | |
---|---|
READER_MODE |
this mode allows to configure the service as a reader |
WRITER_MODE |
this mode allows to configure the service as a writer |
Definition at line 79 of file SIOSelector.hpp.
uiIO::editor::SIOSelector::SIOSelector | ( | ) |
Constructor. Do nothing (Just initialize parameters).
By default, the SIOSelector::m_mode is defined as READER_MODE, and SIOSelector::m_servicesAreExcluded as true.
Definition at line 54 of file SIOSelector.cpp.
|
overrideprotectedvirtual |
This method initializes class member parameters from configuration elements.
The method verifies if the configuration is well written and retrieves user parameter values. Thanks to this method, SIOSelector::m_selectedServices value is up to date (cleared before reconfiguring).
Implements fwServices::IService.
Definition at line 70 of file SIOSelector.cpp.
References fwServices::IService::getConfigTree(), READER_MODE, SLM_ASSERT, SLM_DEBUG, and WRITER_MODE.
void uiIO::editor::SIOSelector::setIOMode | ( | IOMode | _mode | ) |
This method allows to configure the service in reader or writer mode (set SIOSelector::m_mode).
[in] | _mode | the value can be SIOSelector::READER_MODE or SIOSelector::WRITER_MODE. |
Definition at line 400 of file SIOSelector.cpp.