static shared_ptr<mw::Component> createRealtimeComponent(const shared_ptr<ComponentRegistry> &componentRegistry, const Datum &realtimeComponentsValue, const std::string &componentType, const std::string &defaultPluginName) { std::string pluginName(defaultPluginName); if (realtimeComponentsValue.isDictionary()) { Datum componentValue = realtimeComponentsValue.getElement(componentType); if (componentValue.isString()) { pluginName = componentValue.getString(); } } mprintf(M_SYSTEM_MESSAGE_DOMAIN, " %s:\t%s", componentType.c_str(), pluginName.c_str()); return componentRegistry->createNewObject(pluginName, map<string, string>()); }