Mercurial > hg > svcore
comparison data/model/Model.cpp @ 1527:710e6250a401 zoom
Merge from default branch
author | Chris Cannam |
---|---|
date | Mon, 17 Sep 2018 13:51:14 +0100 |
parents | 9d37c8cf9686 |
children | d3814e07b8aa |
comparison
equal
deleted
inserted
replaced
1324:d4a28d1479a8 | 1527:710e6250a401 |
---|---|
25 Model::~Model() | 25 Model::~Model() |
26 { | 26 { |
27 // SVDEBUG << "Model::~Model(" << this << ")" << endl; | 27 // SVDEBUG << "Model::~Model(" << this << ")" << endl; |
28 | 28 |
29 if (!m_aboutToDelete) { | 29 if (!m_aboutToDelete) { |
30 SVDEBUG << "NOTE: Model::~Model(" << this << ", \"" | 30 SVDEBUG << "NOTE: Model(" << this << ", \"" |
31 << objectName() << "\"): Model deleted " | 31 << objectName() << "\", type uri <" |
32 << "with no aboutToDelete notification" << endl; | 32 << m_typeUri << ">)::~Model(): Model deleted " |
33 << "with no aboutToDelete notification" | |
34 << endl; | |
33 } | 35 } |
34 | 36 |
35 if (m_alignment) { | 37 if (m_alignment) { |
36 m_alignment->aboutToDelete(); | 38 m_alignment->aboutToDelete(); |
37 delete m_alignment; | 39 delete m_alignment; |
38 } | 40 } |
41 } | |
42 | |
43 int | |
44 Model::getNextId() | |
45 { | |
46 static int nextId = 0; | |
47 static QMutex mutex; | |
48 QMutexLocker locker(&mutex); | |
49 int i = nextId; | |
50 if (nextId == INT_MAX) { | |
51 nextId = INT_MIN; | |
52 } | |
53 ++nextId; | |
54 return i; | |
39 } | 55 } |
40 | 56 |
41 void | 57 void |
42 Model::setSourceModel(Model *model) | 58 Model::setSourceModel(Model *model) |
43 { | 59 { |
57 } | 73 } |
58 | 74 |
59 void | 75 void |
60 Model::aboutToDelete() | 76 Model::aboutToDelete() |
61 { | 77 { |
62 // cerr << "Model(" << this << ")::aboutToDelete()" << endl; | 78 // SVDEBUG << "Model(" << this << ", \"" |
79 // << objectName() << "\", type uri <" | |
80 // << m_typeUri << ">)::aboutToDelete()" << endl; | |
63 | 81 |
64 if (m_aboutToDelete) { | 82 if (m_aboutToDelete) { |
65 cerr << "WARNING: Model(" << this << ", \"" | 83 SVDEBUG << "WARNING: Model(" << this << ", \"" |
66 << objectName() << "\")::aboutToDelete: " | 84 << objectName() << "\", type uri <" |
67 << "aboutToDelete called more than once for the same model" | 85 << m_typeUri << ">)::aboutToDelete: " |
68 << endl; | 86 << "aboutToDelete called more than once for the same model" |
87 << endl; | |
69 } | 88 } |
70 | 89 |
71 emit aboutToBeDeleted(); | 90 emit aboutToBeDeleted(); |
72 m_aboutToDelete = true; | 91 m_aboutToDelete = true; |
73 } | 92 } |
178 Model::toXml(QTextStream &stream, QString indent, | 197 Model::toXml(QTextStream &stream, QString indent, |
179 QString extraAttributes) const | 198 QString extraAttributes) const |
180 { | 199 { |
181 stream << indent; | 200 stream << indent; |
182 stream << QString("<model id=\"%1\" name=\"%2\" sampleRate=\"%3\" start=\"%4\" end=\"%5\" %6/>\n") | 201 stream << QString("<model id=\"%1\" name=\"%2\" sampleRate=\"%3\" start=\"%4\" end=\"%5\" %6/>\n") |
183 .arg(getObjectExportId(this)) | 202 .arg(getObjectExportId(this)) |
184 .arg(encodeEntities(objectName())) | 203 .arg(encodeEntities(objectName())) |
185 .arg(getSampleRate()) | 204 .arg(getSampleRate()) |
186 .arg(getStartFrame()) | 205 .arg(getStartFrame()) |
187 .arg(getEndFrame()) | 206 .arg(getEndFrame()) |
188 .arg(extraAttributes); | 207 .arg(extraAttributes); |
189 } | 208 } |
190 | 209 |
191 | 210 |