Audacity 3.2.0
AudacityMirProject.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*!********************************************************************
3
4 Audacity: A Digital Audio Editor
5
6 AudacityMirProject.h
7
8 Matthieu Hodgkinson
9
10**********************************************************************/
11#pragma once
12
13#include "MirProjectInterface.h"
14
15class AudacityProject;
16
18{
19public:
21 ~AudacityMirProject() override;
22
23 bool ViewIsBeatsAndMeasures() const override;
24
26 double newTempo,
27 std::optional<MIR::TimeSignature> timeSignature) override;
28
29 double GetTempo() const override;
30
31 bool ShouldBeReconfigured(double newTempo, bool isSingleFileImport) override;
32
33 void OnClipsSynchronized() override;
34
35private:
37 {
38 Automatic,
39 Manual,
40 };
41
43 const double mProjectTempo;
45 std::optional<ModificationType> mMostSignificantModification;
46 bool mProjectWasModified = false;
47};
const auto project
double GetTempo() const override
std::optional< ModificationType > mMostSignificantModification
void OnClipsSynchronized() override
AudacityProject & mProject
void ReconfigureMusicGrid(double newTempo, std::optional< MIR::TimeSignature > timeSignature) override
const double mProjectTempo
bool ShouldBeReconfigured(double newTempo, bool isSingleFileImport) override
bool ViewIsBeatsAndMeasures() const override
const bool mImportedOnEmptyProject
AudacityMirProject(AudacityProject &project)
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
Definition: Project.h:90