32 #include <boost/shared_ptr.hpp>
33 #include <boost/thread/recursive_mutex.hpp>
35 #include <rsc/logging/Logger.h>
36 #include <rsc/runtime/TypeStringTools.h>
37 #include <rsc/patterns/Singleton.h>
38 #include <rsc/config/OptionHandler.h>
39 #include <rsc/plugins/Manager.h>
41 #include "rsb/rsbexports.h"
71 class RSB_EXPORT
Factory:
private rsc::patterns::Singleton<Factory> {
97 template<
class DataType>
102 const std::string& dataType
105 createOutConnectors(config), scope, config, dataType));
122 const std::string& dataType
125 =
getFactory().getDefaultParticipantConfig());
216 rsc::plugins::ManagerPtr getPluginManager()
const;
218 friend class rsc::patterns::Singleton<
Factory>;
226 static Factory& getInstanceBase();
239 std::vector<transport::OutConnectorPtr>
242 std::vector<transport::InPullConnectorPtr>
245 std::vector<transport::InPushConnectorPtr>
248 void configureSubsystem(rsc::config::OptionHandler& handler,
249 const std::string& environmentVariablePrefix =
"RSB_");