Audacity 3.2.0
Classes | Namespaces | Typedefs | Enumerations
ProjectFileIO.h File Reference
#include <memory>
#include <optional>
#include <unordered_set>
#include <wx/event.h>
#include "ClientData.h"
#include "Observer.h"
#include "Prefs.h"
#include "XMLTagHandler.h"
Include dependency graph for ProjectFileIO.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


class  ProjectFileIO
 Object associated with a project that manages reading and writing of Audacity project file formats, and autosave. More...
struct  ProjectFileIO::TentativeConnection
class  ProjectFileIO::BackupProject
class  InvisibleTemporaryProject
 Makes a temporary project that doesn't display on the screen. More...


namespace  BasicUI


using WaveTrackArray = std::vector< std::shared_ptr< WaveTrack > >
using SampleBlockID = long long
using Connection = std::unique_ptr< DBConnection >
using BlockIDs = std::unordered_set< SampleBlockID >


enum class  ProjectFileIOMessage : int { CheckpointFailure , ReconnectionFailure , ProjectTitleChange }
 Subscribe to ProjectFileIO to receive messages; always in idle time. More...

Typedef Documentation

◆ BlockIDs

using BlockIDs = std::unordered_set<SampleBlockID>

Definition at line 47 of file ProjectFileIO.h.

◆ Connection

using Connection = std::unique_ptr<DBConnection>

Definition at line 45 of file ProjectFileIO.h.

◆ SampleBlockID

using SampleBlockID = long long

Definition at line 43 of file ProjectFileIO.h.

◆ WaveTrackArray

using WaveTrackArray = std::vector < std::shared_ptr < WaveTrack > >

Definition at line 40 of file ProjectFileIO.h.

Enumeration Type Documentation

◆ ProjectFileIOMessage

enum class ProjectFileIOMessage : int

Subscribe to ProjectFileIO to receive messages; always in idle time.


Failure happened in a worker thread.


Failure to reconnect to the database, after temporary close and attempted file movement


A normal occurrence.

Definition at line 50 of file ProjectFileIO.h.

50 : int {
@ CheckpointFailure
Failure happened in a worker thread.
@ ProjectTitleChange
A normal occurrence.