Skip to content

Class Ase::Project

ClassList > Ase > Project

Projects support loading, saving, playback and act as containers for all other sound objects.

  • #include <api.hh>

Inherits the following classes: Ase::Device

Inherited by the following classes: Ase::ProjectImpl

Public Attributes

Type Name
Member<&Project::bpm_ > bpm
Member<&Project::denominator_ > denominator
Member<&Project::numerator_ > numerator

Public Attributes inherited from Ase::Device

See Ase::Device

Type Name
Member<&Device::devs_ > devs

Public Attributes inherited from Ase::Gadget

See Ase::Gadget

Type Name
Member<&Gadget::name_ > name

Public Functions

Type Name
virtual TrackS all_tracks () = 0
List all tracks of the project.
virtual bool can_redo () = 0
Check if any redo steps have been recorded.
virtual bool can_undo () = 0
Check if any undo steps have been recorded.
virtual TrackP create_track () = 0
Create and append a new Track .
virtual void discard () = 0
Discard project and associated resources.
virtual void group_undo (const String & undoname) = 0
Merge upcoming undo steps.
virtual bool is_playing () = 0
Check whether a project is currently playing (song sequencing).
virtual Error load_project (const String & utf8filename) = 0
Load project from file filename .
virtual TrackP master_track () = 0
Retrieve the master track.
virtual String match_serialized (const String & regex, int group=0) = 0
Match regex against the serialized project state.
virtual void redo () = 0
Redo the last undo modification.
virtual bool remove_track (Track &) = 0
Remove a track owned by this Project .
virtual Error save_project (const String & utf8filename, bool collect) = 0
Store Project and collect external files.
virtual String saved_filename () = 0
Retrieve UTF-8 filename for save or from load.
virtual void start_playback () = 0
Start playback of a project, requires active sound engine.
virtual void stop_playback () = 0
Stop project playback.
virtual TelemetryFieldS telemetry () const = 0
Retrieve project telemetry locations.
virtual void undo () = 0
Undo the last project modification.
virtual void ungroup_undo () = 0
Stop merging undo steps.

Public Functions inherited from Ase::Device

See Ase::Device

Type Name
virtual void _activate () = 0
Add AudioProcessor to the Engine and start processing.
virtual AudioProcessorP _audio_processor () const = 0
Retrieve the corresponding AudioProcessor .
virtual void _deactivate () = 0
Stop processing the corresponding AudioProcessor .
virtual void _disconnect_remove () = 0
Disconnect the device and remove all object references.
virtual void _set_event_source (AudioProcessorP esource) = 0
Track * _track () const
Find Track in parent ancestry.
virtual DeviceInfo device_info () = 0
Describe this Device type.
virtual bool gui_supported () = 0
Has GUI display facilities.
virtual void gui_toggle () = 0
Toggle GUI display.
virtual bool gui_visible () = 0
Is GUI currently visible.
virtual bool is_active () = 0
Check whether this is the active synthesis engine project.
virtual DeviceS list_devices () = 0
List devices in order of processing, notified via "devs".
void remove_self ()
Remove device from its container.

Public Functions inherited from Ase::Gadget

See Ase::Gadget

Type Name
virtual GadgetImpl * _parent () const = 0
Retrieve parent container.
ProjectImpl * _project () const
Find Project in parent ancestry.
virtual void _set_parent (GadgetImpl * parent) = 0
Assign parent container.
virtual PropertyS access_properties () = 0
Retrieve handles for all properties.
virtual PropertyP access_property (String ident)
Retrieve handle for a Property .
virtual Value get_data (const String & key) const = 0
Retrieve session data.
Value get_value (String ident)
Get native property value.
virtual StringS list_properties ()
List all property identifiers.
virtual bool set_data (const String & key, const Value & v) = 0
Assign session data, prefix ephemerals with '_'.
bool set_value (String ident, const Value & v)
virtual String type_nick () const = 0

Public Functions inherited from Ase::Emittable

See Ase::Emittable

Type Name
virtual void emit_event (const String & type, const String & detail, const ValueR fields={}) = 0
virtual void emit_notify (const String & detail) = 0
void js_trigger (const String & eventselector, JsTrigger callback)
virtual ASE_USE_RESULT Connection on_event (const String & eventselector, const EventHandler & eventhandler) = 0

Public Static Functions

Type Name
ProjectP last_project ()

Protected Functions

Type Name
Project ()
virtual bool bpm_ (const double * n, double * q) = 0
virtual bool denominator_ (const double * n, double * q) = 0
virtual bool numerator_ (const double * n, double * q) = 0

Protected Functions inherited from Ase::Device

See Ase::Device

Type Name
Device ()

Protected Functions inherited from Ase::Gadget

See Ase::Gadget

Type Name
Gadget ()
virtual bool name_ (const std::string * n, std::string * q) = 0

Protected Functions inherited from Ase::Object

See Ase::Object

Type Name
virtual ~Object () = 0

Protected Functions inherited from Ase::VirtualBase

See Ase::VirtualBase

Type Name
virtual ~VirtualBase () noexcept = 0

Public Attributes Documentation

variable bpm

Member<&Project::bpm_> Ase::Project::bpm;

variable denominator

Member<&Project::denominator_> Ase::Project::denominator;

variable numerator

Member<&Project::numerator_> Ase::Project::numerator;

Public Functions Documentation

function all_tracks

virtual TrackS Ase::Project::all_tracks () = 0

function can_redo

virtual bool Ase::Project::can_redo () = 0

function can_undo

virtual bool Ase::Project::can_undo () = 0

function create_track

virtual TrackP Ase::Project::create_track () = 0

function discard

virtual void Ase::Project::discard () = 0

function group_undo

virtual void Ase::Project::group_undo (
    const String & undoname
) = 0

function is_playing

virtual bool Ase::Project::is_playing () = 0

function load_project

virtual Error Ase::Project::load_project (
    const String & utf8filename
) = 0

function master_track

virtual TrackP Ase::Project::master_track () = 0

function match_serialized

virtual String Ase::Project::match_serialized (
    const String & regex,
    int group=0
) = 0

function redo

virtual void Ase::Project::redo () = 0

function remove_track

virtual bool Ase::Project::remove_track (
    Track &
) = 0

function save_project

virtual Error Ase::Project::save_project (
    const String & utf8filename,
    bool collect
) = 0

function saved_filename

virtual String Ase::Project::saved_filename () = 0

function start_playback

virtual void Ase::Project::start_playback () = 0

function stop_playback

virtual void Ase::Project::stop_playback () = 0

function telemetry

virtual TelemetryFieldS Ase::Project::telemetry () const = 0

function undo

virtual void Ase::Project::undo () = 0

function ungroup_undo

virtual void Ase::Project::ungroup_undo () = 0

Public Static Functions Documentation

function last_project

static ProjectP Ase::Project::last_project () 

Protected Functions Documentation

function Project

explicit Ase::Project::Project () 

function bpm_

virtual bool Ase::Project::bpm_ (
    const double * n,
    double * q
) = 0

function denominator_

virtual bool Ase::Project::denominator_ (
    const double * n,
    double * q
) = 0

function numerator_

virtual bool Ase::Project::numerator_ (
    const double * n,
    double * q
) = 0


The documentation for this class was generated from the following file /__w/anklang/anklang/ase/api.hh