2#ifndef __ASE_PROJECT_HH__
3#define __ASE_PROJECT_HH__
31 bool discarded_ =
false;
41 void deactivate_edit ();
43 void bpm (
double bpm)
override;
44 double bpm ()
const override;
45 void numerator (
double num)
override;
46 double numerator ()
const override;
47 void denominator (
double den)
override;
48 double denominator ()
const override;
49 String name ()
const override;
56 void undo ()
override;
58 void redo ()
override;
60 double length ()
const override;
77 StreamReaderP load_blob (
const String &fspath);
84 TelemetryFieldS
telemetry ()
const override;
87 static void force_shutdown_all ();
bool remove_track(Track &child) override
Remove a track owned by this Project.
void group_undo(const String &undoname) override
Merge upcoming undo steps.
void _deactivate() override
Stop processing the corresponding AudioProcessor.
void redo() override
Redo the last undo modification.
bool can_redo() override
Check if any redo steps have been recorded.
TrackP master_track() override
Retrieve the master track.
void undo() override
Undo the last project modification.
String match_serialized(const String ®ex, int group) override
Match regex against the serialized project state.
bool is_playing() const override
Check whether a project is currently playing (song sequencing).
bool can_undo() override
Check if any undo steps have been recorded.
void serialize(WritNode &xs) override
Serialize members and childern.
TelemetryFieldS telemetry() const override
Retrieve project telemetry locations.
TrackS all_tracks() override
List all tracks of the project.
void ungroup_undo() override
Stop merging undo steps.
String saved_filename() override
Retrieve UTF-8 filename for save or from load.
TrackP create_track() override
Create and append a new Track.
Error save_project(const String &utf8filename, bool collect) override
Store Project and collect external files.
void _activate() override
Add AudioProcessor to the Engine and start processing.
double master_volume() const override
Get master volume in dB.
String loader_resolve(const String &hexhash)
Find file from hash code, returns fspath.
void start_playback() override
Start playback of a project, requires active sound engine.
DeviceInfo device_info() override
Describe this Device type.
void discard() override
Discard project and associated resources.
Error load_project(const String &utf8filename) override
Load project from file filename.
double length() const override
Get the end time of the last clip in seconds.
void pause_playback() override
Pause playback at the current position.
void stop_playback() override
Stop project playback.
Projects support loading, saving, playback and act as containers for all other sound objects.
Container for Clip objects and sequencing information.
One entry in a Writ serialization document.
#define ASE_DEFINE_MAKE_SHARED(CLASS)
Define a member function static shared_ptr<CLASS> make_shared(ctorargs...);.
The Anklang C++ API namespace.
Error
Enum representing Error states.