# HG changeset patch # User Chris Cannam # Date 1299671281 0 # Node ID a1ae2c1f80ab80e75ab635e57f8c0e91c266725e # Parent 5f75414d85f67ae3d0c7f23061d36f4ed740383a * Use note model when importing RDF types with "note" in them diff -r 5f75414d85f6 -r a1ae2c1f80ab rdf/RDFImporter.cpp --- a/rdf/RDFImporter.cpp Tue Mar 08 10:46:36 2011 +0000 +++ b/rdf/RDFImporter.cpp Wed Mar 09 11:48:01 2011 +0000 @@ -214,7 +214,7 @@ results = query.execute(); } - for (int i = 0; i < results.size(); ++i) { + for (int i = 0; i < (int)results.size(); ++i) { QString signal = results[i]["signal"].value; QString source = results[i]["source"].value; @@ -320,7 +320,7 @@ return; } - for (int i = 0; i < results.size(); ++i) { + for (int i = 0; i < (int)results.size(); ++i) { QString feature = results[i]["feature"].value; QString type = results[i]["feature_signal_type"].value; @@ -699,7 +699,7 @@ std::map > > > modelMap; - for (int i = 0; i < results.size(); ++i) { + for (int i = 0; i < (int)results.size(); ++i) { if (i % 4 == 0) { if (reporter) reporter->setProgress(i/4); @@ -718,6 +718,7 @@ QString label = ""; bool text = (type.contains("Text") || type.contains("text")); // Ha, ha + bool note = (type.contains("Note") || type.contains("note")); // Guffaw if (text) { label = SimpleSPARQLQuery::singleResultQuery @@ -817,23 +818,16 @@ } else { // haveDuration - if (dimensions == 1 || dimensions == 2) { + if (note || (dimensions > 2)) { + + model = new NoteModel(m_sampleRate, 1, false); + + } else { // If our units are frequency or midi pitch, we // should be using a note model... hm model = new RegionModel(m_sampleRate, 1, false); - - } else { - - // We don't have a three-dimensional sparse model, - // so use a note model. We do have some logic (in - // extractStructure below) for guessing whether - // this should after all have been a dense model, - // but it's hard to apply it because we don't have - // all the necessary timing data yet... hmm - - model = new NoteModel(m_sampleRate, 1, false); } }