diff src/Analyser.h @ 575:3c884bad3d44

Merge from branch by-id
author Chris Cannam
date Thu, 18 Jul 2019 13:38:24 +0100
parents 3f0b44418a19
children 335fd9b439a0
line wrap: on
line diff
--- a/src/Analyser.h	Thu Jun 20 11:10:59 2019 +0100
+++ b/src/Analyser.h	Thu Jul 18 13:38:24 2019 +0100
@@ -26,8 +26,8 @@
 #include "framework/Document.h"
 #include "base/Selection.h"
 #include "base/Clipboard.h"
+#include "data/model/WaveFileModel.h"
 
-class WaveFileModel;
 class Pane;
 class PaneStack;
 class Layer;
@@ -43,11 +43,15 @@
     Analyser();
     virtual ~Analyser();
 
-    // Process new main model, add derived layers; return "" on success or error string on failure
-    QString newFileLoaded(Document *newDocument, WaveFileModel *model,
-                          PaneStack *paneStack, Pane *pane);
+    // Process new main model, add derived layers; return "" on
+    // success or error string on failure
+    QString newFileLoaded(Document *newDocument,
+                          ModelId model,
+                          PaneStack *paneStack,
+                          Pane *pane);
 
-    // Remove any derived layers, process the main model, add derived layers; return "" on success or error string on failure
+    // Remove any derived layers, process the main model, add derived
+    // layers; return "" on success or error string on failure
     QString analyseExistingFile();
 
     // Discard any layers etc associated with the current document
@@ -90,9 +94,12 @@
         }
     }
 
-    WaveFileModel *getMainModel() const {
+    ModelId getMainModelId() const {
         return m_fileModel;
     }
+    std::shared_ptr<WaveFileModel> getMainModel() const {
+        return ModelById::getAs<WaveFileModel>(m_fileModel);
+    }
 
     float getGain(Component c) const;
     void setGain(Component c, float gain);
@@ -223,7 +230,7 @@
 
 protected:
     Document *m_document;
-    WaveFileModel *m_fileModel;
+    ModelId m_fileModel;
     PaneStack *m_paneStack;
     Pane *m_pane;