11#ifndef __AUDACITY_PROJECT__
12#define __AUDACITY_PROJECT__
71 static std::mutex &Mutex();
89 ,
public std::enable_shared_from_this<AudacityProject>
96 static std::shared_ptr<AudacityProject> Create();
111 const wxString &GetProjectName()
const;
112 void SetProjectName(
const wxString &
name);
116 FilePath GetInitialImportPath()
const;
117 void SetInitialImportPath(
const FilePath &path);
130 bool mbBusyImporting{
false };
140namespace BasicUI {
class WindowPlacement; }
144 std::unique_ptr<const BasicUI::WindowPlacement>(
150PROJECT_API std::unique_ptr<const BasicUI::WindowPlacement>
Utility ClientData::Site to register hooks into a host class that attach client data.
ClientData::Site< AudacityProject, ClientData::Base, ClientData::SkipCopying, std::shared_ptr > AttachedProjectObjects
DECLARE_XML_METHOD_REGISTRY(PROJECT_API, ProjectFileIORegistry)
PROJECT_API std::unique_ptr< const BasicUI::WindowPlacement > ProjectFramePlacement(AudacityProject *project)
Make a WindowPlacement object suitable for project (which may be null)
static Container gAudacityProjects
std::vector< AProjectHolder > Container
Container::const_reverse_iterator const_reverse_iterator
Container::const_iterator const_iterator
Container::value_type value_type
std::shared_ptr< AudacityProject > AProjectHolder
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
FilePath mInitialImportPath
static int mProjectCounter
Utility to register hooks into a host class that attach client data.
Global function-valued variable, adding a convenient Call()
PROJECT_FILE_IO_API void Remove(const FilePath &path)
PROJECT_FILE_IO_API void Add(const FilePath &path)
@ SkipCopying
ignore the source and leave empty
const char * end(const char *str) noexcept
const char * begin(const char *str) noexcept
A convenient default parameter for class template Site.