Mercurial > hg > svapp
comparison framework/SVFileReader.cpp @ 482:01669adb0956 tony-2.0-integration
Merge through to branch for Tony 2.0
author | Chris Cannam |
---|---|
date | Thu, 20 Aug 2015 14:54:21 +0100 |
parents | 6f475df6f833 |
children | aecd5bdfc71f |
comparison
equal
deleted
inserted
replaced
448:b36042cb972a | 482:01669adb0956 |
---|---|
24 #include "data/fileio/AudioFileReaderFactory.h" | 24 #include "data/fileio/AudioFileReaderFactory.h" |
25 #include "data/fileio/FileSource.h" | 25 #include "data/fileio/FileSource.h" |
26 | 26 |
27 #include "data/fileio/FileFinder.h" | 27 #include "data/fileio/FileFinder.h" |
28 | 28 |
29 #include "data/model/WaveFileModel.h" | 29 #include "data/model/ReadOnlyWaveFileModel.h" |
30 #include "data/model/EditableDenseThreeDimensionalModel.h" | 30 #include "data/model/EditableDenseThreeDimensionalModel.h" |
31 #include "data/model/SparseOneDimensionalModel.h" | 31 #include "data/model/SparseOneDimensionalModel.h" |
32 #include "data/model/SparseTimeValueModel.h" | 32 #include "data/model/SparseTimeValueModel.h" |
33 #include "data/model/NoteModel.h" | 33 #include "data/model/NoteModel.h" |
34 #include "data/model/FlexiNoteModel.h" | 34 #include "data/model/FlexiNoteModel.h" |
487 Preferences::getInstance()->getResampleOnLoad()) { | 487 Preferences::getInstance()->getResampleOnLoad()) { |
488 WaveFileModel *mm = m_document->getMainModel(); | 488 WaveFileModel *mm = m_document->getMainModel(); |
489 if (mm) rate = mm->getSampleRate(); | 489 if (mm) rate = mm->getSampleRate(); |
490 } | 490 } |
491 | 491 |
492 model = new WaveFileModel(file, rate); | 492 model = new ReadOnlyWaveFileModel(file, rate); |
493 if (!model->isOK()) { | 493 if (!model->isOK()) { |
494 delete model; | 494 delete model; |
495 model = 0; | 495 model = 0; |
496 } | 496 } |
497 } | 497 } |
884 Model *model = m_models[modelId]; | 884 Model *model = m_models[modelId]; |
885 m_document->setModel(layer, model); | 885 m_document->setModel(layer, model); |
886 } else { | 886 } else { |
887 cerr << "WARNING: SV-XML: Unknown model id " << modelId | 887 cerr << "WARNING: SV-XML: Unknown model id " << modelId |
888 << " in layer definition" << endl; | 888 << " in layer definition" << endl; |
889 | 889 if (!layer->canExistWithoutModel()) { |
890 // Don't add a layer with an unknown model id | 890 // Don't add a layer with an unknown model id |
891 m_document->deleteLayer(layer); | 891 // unless it explicitly supports this state |
892 m_layers[id] = layer = 0; | 892 m_document->deleteLayer(layer); |
893 return false; | 893 m_layers[id] = layer = 0; |
894 } | 894 return false; |
895 } | |
896 } | |
895 } | 897 } |
896 | 898 |
897 if (layer) layer->setProperties(attributes); | 899 if (layer) layer->setProperties(attributes); |
898 } | 900 } |
899 | 901 |