Skip to content

Class Ase::ProjectImpl

ClassList > Ase > ProjectImpl

Inherits the following classes: Ase::DeviceImpl, Ase::Project

Classes

Type Name
struct PStorage

Public Attributes inherited from Ase::Project

See Ase::Project

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 Static Attributes

Type Name
size_t undo_mem_counter = = 0

Public Functions

Type Name
void _activate () override
AudioProcessorP _audio_processor () override const
void _deactivate () override
void _set_event_source (AudioProcessorP esource) override
TrackS all_tracks () override
bool can_redo () override
bool can_undo () override
void clear_undo ()
TrackP create_track () override
DeviceInfo device_info () override
void discard () override
void group_undo (const String & undoname) override
bool is_playing () override
StreamReaderP load_blob (const String & fspath)
Error load_project (const String & utf8filename) override
String loader_resolve (const String & hexhash)
Find file from hash code, returns fspath.
AudioProcessorP master_processor () const
TrackP master_track () override
void push_undo (const VoidF & func)
void redo () override
bool remove_track (Track & child) override
Error save_project (const String & utf8filename, bool collect) override
String saved_filename () override
const TickSignature & signature () const
void start_playback (double autostop)
void start_playback () override
void stop_playback () override
TelemetryFieldS telemetry () override const
ssize_t track_index (const Track & child) const
void undo () override
UndoScope undo_scope (const String & scopename)
size_t undo_size_guess () const
void ungroup_undo () override
Error writer_add_file (const String & fspath)
Error writer_collect (const String & fspath, String * hexhashp)
String writer_file_name (const String & fspath) const

Public Functions inherited from Ase::Project

See Ase::Project

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
ProjectImplP create (const String & projectname)

Public Static Functions inherited from Ase::Project

See Ase::Project

Type Name
ProjectP last_project ()

Protected Functions

Type Name
ProjectImpl ()
virtual bool bpm_ (const double * n, double * q) override
virtual bool denominator_ (const double * n, double * q) override
String match_serialized (const String & regex, int group) override
virtual bool numerator_ (const double * n, double * q) override
void serialize (WritNode & xs) override
Error snapshot_project (String & json)
void update_tempo ()
virtual ~ProjectImpl ()

Protected Functions inherited from Ase::Project

See Ase::Project

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 Static Attributes Documentation

variable undo_mem_counter

size_t Ase::ProjectImpl::undo_mem_counter;

Public Functions Documentation

function _activate

void Ase::ProjectImpl::_activate () override

function _audio_processor

AudioProcessorP Ase::ProjectImpl::_audio_processor () override const

function _deactivate

void Ase::ProjectImpl::_deactivate () override

function _set_event_source

void Ase::ProjectImpl::_set_event_source (
    AudioProcessorP esource
) override

function all_tracks

TrackS Ase::ProjectImpl::all_tracks () override

function can_redo

bool Ase::ProjectImpl::can_redo () override

function can_undo

bool Ase::ProjectImpl::can_undo () override

function clear_undo

void Ase::ProjectImpl::clear_undo () 

function create_track

TrackP Ase::ProjectImpl::create_track () override

function device_info

DeviceInfo Ase::ProjectImpl::device_info () override

function discard

void Ase::ProjectImpl::discard () override

function group_undo

void Ase::ProjectImpl::group_undo (
    const String & undoname
) override

function is_playing

bool Ase::ProjectImpl::is_playing () override

function load_blob

StreamReaderP Ase::ProjectImpl::load_blob (
    const String & fspath
) 

function load_project

Error Ase::ProjectImpl::load_project (
    const String & utf8filename
) override

function loader_resolve

String Ase::ProjectImpl::loader_resolve (
    const String & hexhash
) 

function master_processor

AudioProcessorP Ase::ProjectImpl::master_processor () const

function master_track

TrackP Ase::ProjectImpl::master_track () override

function push_undo

void Ase::ProjectImpl::push_undo (
    const VoidF & func
) 

function redo

void Ase::ProjectImpl::redo () override

function remove_track

bool Ase::ProjectImpl::remove_track (
    Track & child
) override

function save_project

Error Ase::ProjectImpl::save_project (
    const String & utf8filename,
    bool collect
) override

function saved_filename

String Ase::ProjectImpl::saved_filename () override

function signature

inline const TickSignature & Ase::ProjectImpl::signature () const

function start_playback [1/2]

void Ase::ProjectImpl::start_playback (
    double autostop
) 

function start_playback [2/2]

inline void Ase::ProjectImpl::start_playback () override

function stop_playback

void Ase::ProjectImpl::stop_playback () override

function telemetry

TelemetryFieldS Ase::ProjectImpl::telemetry () override const

function track_index

ssize_t Ase::ProjectImpl::track_index (
    const Track & child
) const

function undo

void Ase::ProjectImpl::undo () override

function undo_scope

UndoScope Ase::ProjectImpl::undo_scope (
    const String & scopename
) 

function undo_size_guess

size_t Ase::ProjectImpl::undo_size_guess () const

function ungroup_undo

void Ase::ProjectImpl::ungroup_undo () override

function writer_add_file

Error Ase::ProjectImpl::writer_add_file (
    const String & fspath
) 

function writer_collect

Error Ase::ProjectImpl::writer_collect (
    const String & fspath,
    String * hexhashp
) 

function writer_file_name

String Ase::ProjectImpl::writer_file_name (
    const String & fspath
) const

Public Static Functions Documentation

function create

static ProjectImplP Ase::ProjectImpl::create (
    const String & projectname
) 

Protected Functions Documentation

function ProjectImpl

explicit Ase::ProjectImpl::ProjectImpl () 

function bpm_

virtual bool Ase::ProjectImpl::bpm_ (
    const double * n,
    double * q
) override

function denominator_

virtual bool Ase::ProjectImpl::denominator_ (
    const double * n,
    double * q
) override

function match_serialized

String Ase::ProjectImpl::match_serialized (
    const String & regex,
    int group
) override

function numerator_

virtual bool Ase::ProjectImpl::numerator_ (
    const double * n,
    double * q
) override

function serialize

void Ase::ProjectImpl::serialize (
    WritNode & xs
) override

function snapshot_project

Error Ase::ProjectImpl::snapshot_project (
    String & json
) 

function update_tempo

void Ase::ProjectImpl::update_tempo () 

function ~ProjectImpl

virtual Ase::ProjectImpl::~ProjectImpl () 


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