コード例 #1
0
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>());
}