Mercurial > hg > svapp
comparison framework/Document.cpp @ 371:dfcc5b355f33
Merge from branch warnfix_no_size_t
author | Chris Cannam |
---|---|
date | Wed, 18 Jun 2014 13:51:38 +0100 |
parents | f1cab64363d7 |
children | a4c2a4685cf1 |
comparison
equal
deleted
inserted
replaced
355:e7a3fa8f4eec | 371:dfcc5b355f33 |
---|---|
233 //!!! This identifier may be wrong! | 233 //!!! This identifier may be wrong! |
234 emit modelGenerationWarning(transforms[0].getIdentifier(), message); | 234 emit modelGenerationWarning(transforms[0].getIdentifier(), message); |
235 } | 235 } |
236 | 236 |
237 QStringList names; | 237 QStringList names; |
238 for (int i = 0; i < newModels.size(); ++i) { | 238 for (int i = 0; i < (int)newModels.size(); ++i) { |
239 names.push_back(getUniqueLayerName | 239 names.push_back(getUniqueLayerName |
240 (TransformFactory::getInstance()-> | 240 (TransformFactory::getInstance()-> |
241 getTransformFriendlyName | 241 getTransformFriendlyName |
242 (transforms[i].getIdentifier()))); | 242 (transforms[i].getIdentifier()))); |
243 } | 243 } |
273 m_doc->addAdditionalModel(model); | 273 m_doc->addAdditionalModel(model); |
274 names.push_back(QString()); | 274 names.push_back(QString()); |
275 } | 275 } |
276 vector<Layer *> layers = m_doc->createLayersForDerivedModels | 276 vector<Layer *> layers = m_doc->createLayersForDerivedModels |
277 (models, names); | 277 (models, names); |
278 m_handler->layersCreated(m_primary, layers); | 278 m_handler->layersCreated(this, m_primary, layers); |
279 delete this; | 279 delete this; |
280 } | 280 } |
281 | 281 |
282 void | 282 void |
283 noMoreModelsAvailable() { | 283 noMoreModelsAvailable() { |
284 std::cerr << "AdditionalModelConverter::noMoreModelsAvailable" << std::endl; | 284 std::cerr << "AdditionalModelConverter::noMoreModelsAvailable" << std::endl; |
285 m_handler->layersCreated(m_primary, vector<Layer *>()); | 285 m_handler->layersCreated(this, m_primary, vector<Layer *>()); |
286 delete this; | 286 delete this; |
287 } | |
288 | |
289 void cancel() { | |
290 foreach (Layer *layer, m_primary) { | |
291 Model *model = layer->getModel(); | |
292 if (model) { | |
293 model->abandon(); | |
294 } | |
295 } | |
287 } | 296 } |
288 | 297 |
289 private: | 298 private: |
290 Document *m_doc; | 299 Document *m_doc; |
291 vector<Layer *> m_primary; | 300 vector<Layer *> m_primary; |
292 Document::LayerCreationHandler *m_handler; //!!! how to handle destruction of this? | 301 Document::LayerCreationHandler *m_handler; //!!! how to handle destruction of this? |
293 }; | 302 }; |
294 | 303 |
295 void | 304 Document::LayerCreationAsyncHandle |
296 Document::createDerivedLayersAsync(const Transforms &transforms, | 305 Document::createDerivedLayersAsync(const Transforms &transforms, |
297 const ModelTransformer::Input &input, | 306 const ModelTransformer::Input &input, |
298 LayerCreationHandler *handler) | 307 LayerCreationHandler *handler) |
299 { | 308 { |
300 QString message; | 309 QString message; |
303 | 312 |
304 vector<Model *> newModels = addDerivedModels | 313 vector<Model *> newModels = addDerivedModels |
305 (transforms, input, message, amc); | 314 (transforms, input, message, amc); |
306 | 315 |
307 QStringList names; | 316 QStringList names; |
308 for (int i = 0; i < newModels.size(); ++i) { | 317 for (int i = 0; i < (int)newModels.size(); ++i) { |
309 names.push_back(getUniqueLayerName | 318 names.push_back(getUniqueLayerName |
310 (TransformFactory::getInstance()-> | 319 (TransformFactory::getInstance()-> |
311 getTransformFriendlyName | 320 getTransformFriendlyName |
312 (transforms[i].getIdentifier()))); | 321 (transforms[i].getIdentifier()))); |
313 } | 322 } |
316 amc->setPrimaryLayers(layers); | 325 amc->setPrimaryLayers(layers); |
317 | 326 |
318 if (newModels.empty()) { | 327 if (newModels.empty()) { |
319 //!!! This identifier may be wrong! | 328 //!!! This identifier may be wrong! |
320 emit modelGenerationFailed(transforms[0].getIdentifier(), message); | 329 emit modelGenerationFailed(transforms[0].getIdentifier(), message); |
330 //!!! what to do with amc? | |
321 } else if (message != "") { | 331 } else if (message != "") { |
322 //!!! This identifier may be wrong! | 332 //!!! This identifier may be wrong! |
323 emit modelGenerationWarning(transforms[0].getIdentifier(), message); | 333 emit modelGenerationWarning(transforms[0].getIdentifier(), message); |
324 } | 334 //!!! what to do with amc? |
335 } | |
336 | |
337 return amc; | |
338 } | |
339 | |
340 void | |
341 Document::cancelAsyncLayerCreation(Document::LayerCreationAsyncHandle h) | |
342 { | |
343 AdditionalModelConverter *conv = static_cast<AdditionalModelConverter *>(h); | |
344 conv->cancel(); | |
325 } | 345 } |
326 | 346 |
327 vector<Layer *> | 347 vector<Layer *> |
328 Document::createLayersForDerivedModels(vector<Model *> newModels, | 348 Document::createLayersForDerivedModels(vector<Model *> newModels, |
329 QStringList names) | 349 QStringList names) |
491 << typeid(*model).name() << ") with model " | 511 << typeid(*model).name() << ") with model " |
492 << replacementModel << " (type " | 512 << replacementModel << " (type " |
493 << typeid(*replacementModel).name() << ") in layer " | 513 << typeid(*replacementModel).name() << ") in layer " |
494 << layer << " (name " << layer->objectName() << ")" | 514 << layer << " (name " << layer->objectName() << ")" |
495 << endl; | 515 << endl; |
496 #endif | 516 |
497 RangeSummarisableTimeValueModel *rm = | 517 RangeSummarisableTimeValueModel *rm = |
498 dynamic_cast<RangeSummarisableTimeValueModel *>(replacementModel); | 518 dynamic_cast<RangeSummarisableTimeValueModel *>(replacementModel); |
499 #ifdef DEBUG_DOCUMENT | |
500 if (rm) { | 519 if (rm) { |
501 cerr << "new model has " << rm->getChannelCount() << " channels " << endl; | 520 cerr << "new model has " << rm->getChannelCount() << " channels " << endl; |
502 } else { | 521 } else { |
503 cerr << "new model " << replacementModel << " is not a RangeSummarisableTimeValueModel!" << endl; | 522 cerr << "new model " << replacementModel << " is not a RangeSummarisableTimeValueModel!" << endl; |
504 } | 523 } |