Mercurial > hg > svcore
changeset 720:685e0234c4cd
Merge
author | Chris Cannam |
---|---|
date | Fri, 13 Jan 2012 17:21:31 +0000 |
parents | d6d76088e632 (current diff) f3fd2988fc9b (diff) |
children | 0696d02f0f3f |
files | |
diffstat | 5 files changed, 68 insertions(+), 41 deletions(-) [+] |
line wrap: on
line diff
--- a/rdf/PluginRDFDescription.cpp Fri Jan 13 17:21:18 2012 +0000 +++ b/rdf/PluginRDFDescription.cpp Fri Jan 13 17:21:31 2012 +0000 @@ -278,19 +278,10 @@ ( " PREFIX vamp: <http://purl.org/ontology/vamp/> " - " SELECT ?output ?output_id ?output_type ?unit " + " SELECT ?output " " WHERE { " - " <%1> vamp:output ?output . " - - " ?output vamp:identifier ?output_id ; " - " a ?output_type . " - - " OPTIONAL { " - " ?output vamp:unit ?unit " - " } . " - " } " ) .arg(m_pluginUri)); @@ -305,7 +296,7 @@ } if (results.empty()) { - SVDEBUG << "ERROR: PluginRDFDescription::indexURL: NOTE: No outputs defined for <" + cerr << "ERROR: PluginRDFDescription::indexURL: NOTE: No outputs defined for <" << m_pluginUri << ">" << endl; return false; } @@ -316,9 +307,48 @@ for (int i = 0; i < results.size(); ++i) { + if (results[i]["output"].type != SimpleSPARQLQuery::URIValue || + results[i]["output"].value == "") { + cerr << "ERROR: PluginRDFDescription::indexURL: No valid URI for output " << i << " of plugin <" << m_pluginUri << ">" << endl; + return false; + } + QString outputUri = results[i]["output"].value; - QString outputId = results[i]["output_id"].value; - QString outputType = results[i]["output_type"].value; + + SimpleSPARQLQuery::Value v; + + v = SimpleSPARQLQuery::singleResultQuery + (m, + QString(" PREFIX vamp: <http://purl.org/ontology/vamp/> " + " SELECT ?output_id " + " WHERE { <%1> vamp:identifier ?output_id } ") + .arg(outputUri), "output_id"); + + if (v.type != SimpleSPARQLQuery::LiteralValue || v.value == "") { + cerr << "ERROR: PluginRDFDescription::indexURL: No identifier for output <" << outputUri << ">" << endl; + return false; + } + QString outputId = v.value; + + v = SimpleSPARQLQuery::singleResultQuery + (m, + QString(" PREFIX vamp: <http://purl.org/ontology/vamp/> " + " SELECT ?output_type " + " WHERE { <%1> a ?output_type } ") + .arg(outputUri), "output_type"); + + QString outputType; + if (v.type == SimpleSPARQLQuery::URIValue) outputType = v.value; + + v = SimpleSPARQLQuery::singleResultQuery + (m, + QString(" PREFIX vamp: <http://purl.org/ontology/vamp/> " + " SELECT ?unit " + " WHERE { <%1> vamp:unit ?unit } ") + .arg(outputUri), "unit"); + + QString outputUnit; + if (v.type == SimpleSPARQLQuery::LiteralValue) outputUnit = v.value; m_outputUriMap[outputId] = outputUri; @@ -332,23 +362,16 @@ m_outputDispositions[outputId] = OutputDispositionUnknown; } - if (results[i]["unit"].type == SimpleSPARQLQuery::LiteralValue) { - - QString unit = results[i]["unit"].value; - - if (unit != "") { - m_outputUnitMap[outputId] = unit; - } + if (outputUnit != "") { + m_outputUnitMap[outputId] = outputUnit; } - SimpleSPARQLQuery::Value v; - v = SimpleSPARQLQuery::singleResultQuery (m, QString(" PREFIX vamp: <http://purl.org/ontology/vamp/> " " PREFIX dc: <http://purl.org/dc/elements/1.1/> " " SELECT ?title " - " WHERE { <%2> dc:title ?title } ") + " WHERE { <%1> dc:title ?title } ") .arg(outputUri), "title"); if (v.type == SimpleSPARQLQuery::LiteralValue && v.value != "") { @@ -357,8 +380,8 @@ QString queryTemplate = QString(" PREFIX vamp: <http://purl.org/ontology/vamp/> " - " SELECT ?%3 " - " WHERE { <%2> vamp:computes_%3 ?%3 } ") + " SELECT ?%2 " + " WHERE { <%1> vamp:computes_%2 ?%2 } ") .arg(outputUri); v = SimpleSPARQLQuery::singleResultQuery
--- a/rdf/PluginRDFIndexer.cpp Fri Jan 13 17:21:18 2012 +0000 +++ b/rdf/PluginRDFIndexer.cpp Fri Jan 13 17:21:31 2012 +0000 @@ -80,7 +80,7 @@ // rdf extension. for (vector<string>::const_iterator i = paths.begin(); i != paths.end(); ++i) { - + QDir dir(i->c_str()); if (!dir.exists()) continue; @@ -89,6 +89,7 @@ for (QStringList::const_iterator j = entries.begin(); j != entries.end(); ++j) { + QFileInfo fi(dir.filePath(*j)); pullFile(fi.absoluteFilePath()); } @@ -98,6 +99,7 @@ for (QStringList::const_iterator j = subdirs.begin(); j != subdirs.end(); ++j) { + QDir subdir(dir.filePath(*j)); if (subdir.exists()) { entries = subdir.entryList @@ -293,7 +295,7 @@ } if (results.empty()) { - SVDEBUG << "PluginRDFIndexer::reindex: NOTE: no vamp:Plugin resources found in indexed documents" << endl; + cerr << "PluginRDFIndexer::reindex: NOTE: no vamp:Plugin resources found in indexed documents" << endl; return false; } @@ -308,13 +310,13 @@ QString identifier = (*i)["plugin_id"].value; if (identifier == "") { - SVDEBUG << "PluginRDFIndexer::reindex: NOTE: No vamp:identifier for plugin <" + cerr << "PluginRDFIndexer::reindex: NOTE: No vamp:identifier for plugin <" << pluginUri << ">" << endl; continue; } if (soUri == "") { - SVDEBUG << "PluginRDFIndexer::reindex: NOTE: No implementation library for plugin <" + cerr << "PluginRDFIndexer::reindex: NOTE: No implementation library for plugin <" << pluginUri << ">" << endl; continue; @@ -334,7 +336,7 @@ SimpleSPARQLQuery::singleResultQuery(m, sonameQuery, "library_id"); QString soname = sonameValue.value; if (soname == "") { - SVDEBUG << "PluginRDFIndexer::reindex: NOTE: No identifier for library <" + cerr << "PluginRDFIndexer::reindex: NOTE: No identifier for library <" << soUri << ">" << endl; continue; @@ -355,7 +357,7 @@ if (pluginUri != "") { if (m_uriToIdMap.find(pluginUri) != m_uriToIdMap.end()) { - SVDEBUG << "PluginRDFIndexer::reindex: WARNING: Found multiple plugins with the same URI:" << endl; + cerr << "PluginRDFIndexer::reindex: WARNING: Found multiple plugins with the same URI:" << endl; cerr << " 1. Plugin id \"" << m_uriToIdMap[pluginUri] << "\"" << endl; cerr << " 2. Plugin id \"" << pluginId << "\"" << endl; cerr << "both claim URI <" << pluginUri << ">" << endl; @@ -366,7 +368,7 @@ } if (!foundSomething) { - SVDEBUG << "PluginRDFIndexer::reindex: NOTE: Plugins found, but none sufficiently described" << endl; + cerr << "PluginRDFIndexer::reindex: NOTE: Plugins found, but none sufficiently described" << endl; } return addedSomething;
--- a/rdf/RDFFeatureWriter.cpp Fri Jan 13 17:21:18 2012 +0000 +++ b/rdf/RDFFeatureWriter.cpp Fri Jan 13 17:21:31 2012 +0000 @@ -141,10 +141,10 @@ m_rdfDescriptions[pluginId] = PluginRDFDescription(pluginId); if (m_rdfDescriptions[pluginId].haveDescription()) { - SVDEBUG << "NOTE: Have RDF description for plugin ID \"" + cerr << "NOTE: Have RDF description for plugin ID \"" << pluginId << "\"" << endl; } else { - SVDEBUG << "NOTE: No RDF description for plugin ID \"" + cerr << "NOTE: No RDF description for plugin ID \"" << pluginId << "\"" << endl; if (!m_network) { cerr << " Consider using the --rdf-network option to retrieve plugin descriptions" << endl;
--- a/rdf/SimpleSPARQLQuery.cpp Fri Jan 13 17:21:18 2012 +0000 +++ b/rdf/SimpleSPARQLQuery.cpp Fri Jan 13 17:21:31 2012 +0000 @@ -619,7 +619,7 @@ SimpleSPARQLQuery q(type, query); ResultList results = q.execute(); if (!q.isOK()) { - SVDEBUG << "SimpleSPARQLQuery::singleResultQuery: ERROR: " + cerr << "SimpleSPARQLQuery::singleResultQuery: ERROR: " << q.getErrorString() << endl; return Value(); }
--- a/transform/FeatureExtractionModelTransformer.cpp Fri Jan 13 17:21:18 2012 +0000 +++ b/transform/FeatureExtractionModelTransformer.cpp Fri Jan 13 17:21:31 2012 +0000 @@ -176,9 +176,8 @@ { DenseTimeValueModel *input = getConformingInput(); -// std::cerr << "FeatureExtractionModelTransformer: output sample type " -// << m_descriptor->sampleType << std::endl; - +// std::cerr << "FeatureExtractionModelTransformer::createOutputModel: sample type " << m_descriptor->sampleType << ", rate " << m_descriptor->sampleRate << std::endl; + PluginRDFDescription description(m_transform.getPluginIdentifier()); QString outputId = m_transform.getOutput(); @@ -201,7 +200,7 @@ size_t modelRate = input->getSampleRate(); size_t modelResolution = 1; - + switch (m_descriptor->sampleType) { case Vamp::Plugin::OutputDescriptor::VariableSampleRate: @@ -636,8 +635,11 @@ { size_t inputRate = m_input.getModel()->getSampleRate(); -// SVDEBUG << "FeatureExtractionModelTransformer::addFeature(" -// << blockFrame << ")" << endl; +// std::cerr << "FeatureExtractionModelTransformer::addFeature: blockFrame = " +// << blockFrame << ", hasTimestamp = " << feature.hasTimestamp +// << ", timestamp = " << feature.timestamp << ", hasDuration = " +// << feature.hasDuration << ", duration = " << feature.duration +// << std::endl; int binCount = 1; if (m_descriptor->hasFixedBinCount) {