7 #include "preferences/Plugin.hpp" 9 #include "preferences/SPreferences.hpp" 11 #include <fwData/String.hpp> 13 #include <fwPreferences/helper.hpp> 15 #include <fwRuntime/EConfigurationElement.hpp> 16 #include <fwRuntime/profile/Profile.hpp> 17 #include <fwRuntime/utils/GenericExecutableFactoryRegistrar.hpp> 19 #include <fwServices/macros.hpp> 20 #include <fwServices/op/Add.hpp> 21 #include <fwServices/op/Get.hpp> 23 #include <fwTools/Os.hpp> 28 const std::string Plugin::s_PREF_SERVICE_UID =
"PREF_SERVICE_UID";
30 static ::fwRuntime::utils::GenericExecutableFactoryRegistrar<Plugin> registrar(
"preferences::Plugin");
36 m_preferences = ::fwData::Composite::New();
38 ::fwServices::IService::sptr prefSrv;
39 prefSrv = ::fwServices::add(
"::preferences::SPreferences", s_PREF_SERVICE_UID);
40 prefSrv->registerInOut(m_preferences, fwPreferences::s_PREFERENCES_KEY);
44 ::fwRuntime::EConfigurationElement::sptr prefConfig = ::fwRuntime::EConfigurationElement::New(
"filename" );
45 ::boost::filesystem::path prefFile = ::fwPreferences::getPreferencesFile();
46 prefConfig->setValue(prefFile.string());
48 prefSrv->setConfiguration(prefConfig);
52 if ( m_preferences->find(
"PREFERENCES_VERSION" ) == m_preferences->end() )
54 ::fwData::String::sptr version = ::fwData::String::New( PREFERENCES_VER );
55 (*m_preferences)[
"PREFERENCES_VERSION" ] = version;
60 OSLM_ERROR(
"Preferences service not started. " << e.what());
70 ::fwServices::IService::sptr prefSrv = ::fwServices::get(s_PREF_SERVICE_UID);
72 ::fwServices::OSR::unregisterService(prefSrv);
74 m_preferences.reset();
#define OSLM_ERROR(message)
The namespace preferences contains the service to manage the application's preferences (window size/p...
void stop() noexcept
Notifies the plugin about its stop.
void start()
Notifies the plugin about its start.