Anklang-0.3.0.dev886+g785567a1 anklang-0.3.0.dev886+g785567a1
ASE — Anklang Sound Engine (C++)

« « « Anklang Documentation
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Friends | List of all members
Ase::TrackImpl Class Reference

Ase::Track implementation. More...

#include "track.hh"

Inheritance diagram for Ase::TrackImpl:
[legend]

Classes

class  ClipScout
 MIDI clip playback succession generator. More...
 
class  TrackStateListener
 

Public Types

enum  { NONE }
 
- Public Types inherited from Ase::GadgetImpl
using MemberAccessF = std::function< bool(GadgetImpl *, const Value *, Value *)>
 
using MemberInfosP = const StringS &(*)()
 
using MemberClassT = bool(*)(const SharedBase &)
 

Public Member Functions

 TrackImpl (ProjectImpl &, bool masterflag)
 
 TrackImpl (tracktion::Track &track)
 
bool is_folder () const
 
String name () const override
 
void name (const std::string &n) override
 
void _activate () override
 Add AudioProcessor to the Engine and start processing.
 
void _deactivate () override
 Stop processing the corresponding AudioProcessor.
 
DeviceInfo device_info () override
 Describe this Device type.
 
ProjectImplproject () const
 
bool is_master () const override
 Flag set on the main output track.
 
bool is_muted () const override
 Check if track is muted.
 
void set_muted (bool muted) override
 Set track muted state.
 
bool is_solo () const override
 Check if track is soloed.
 
void set_solo (bool solo) override
 Set track solo state.
 
double volume () const override
 Get track volume in dB.
 
void volume (double db) override
 Set track volume in dB.
 
double pan () const override
 Get track pan (-1.0 to 1.0).
 
void pan (double pan) override
 Set track pan (-1.0 to 1.0).
 
void remove_self () override
 Remove self from parent container.
 
int32 midi_channel () const override
 Midi channel assigned to this track, 0 uses internal per-track channel.
 
void midi_channel (int32 midichannel) override
 
ClipS launcher_clips () override
 Retrieve the list of clips that can be directly played.
 
DeviceP access_device () override
 Retrieve Device handle for this track.
 
MonitorP create_monitor (int32 ochannel) override
 
ssize_t clip_index (const ClipImpl &clip) const
 
int clip_succession (const ClipImpl &clip) const
 
TelemetryFieldS telemetry () const override
 Create signal monitor for an output channel.
 
ClipP create_midi_clip (const String &name, double start, double length) override
 Create a new MIDI clip on this track.
 
ClipP create_audio_clip (const String &name, double start, double length) override
 Create a new audio clip on this track.
 
- Public Member Functions inherited from Ase::DeviceImpl
DeviceS get_devices () const override
 List devices in order of processing, notified via "devs".
 
void set_devices (const DeviceS &newdevices) override
 Set the list of devices.
 
bool is_active () override
 Check whether this is the active synthesis engine project.
 
bool gui_supported () override
 Has GUI display facilities.
 
bool gui_visible () override
 Is GUI currently visible.
 
void gui_toggle () override
 Toggle GUI display.
 
void _disconnect_remove () override
 Disconnect the device and remove all object references.
 
- Public Member Functions inherited from Ase::GadgetImpl
void _set_parent (GadgetImpl *parent) override
 Assign parent container.
 
GadgetImpl_parent () const override
 Retrieve parent container.
 
String type_nick () const override
 
PropertyS access_properties () override
 Retrieve handles for all properties.
 
bool set_data (const String &key, const Value &v) override
 Assign session data, prefix ephemerals with '_'.
 
Value get_data (const String &key) const override
 Retrieve session data.
 
template<class O , class M >
void _register_parameter (O *, M *, const Param::ExtraVals &) const
 
- Public Member Functions inherited from Ase::EmittableImpl
ASE_USE_RESULT Connection on_event (const String &eventselector, const EventHandler &eventhandler) override
 
void emit_event (const String &type, const String &detail, const ValueR fields={}) override
 
void emit_notify (const String &detail) override
 Emit notify:detail, multiple notifications maybe coalesced if a CoalesceNotifies instance exists.
 
- Public Member Functions inherited from Ase::Emittable
void js_trigger (const String &eventselector, JsTrigger callback)
 
- Public Member Functions inherited from std::enable_shared_from_this< SharedBase >
enable_shared_from_this (T... args)
 
operator= (T... args)
 
shared_from_this (T... args)
 
weak_from_this (T... args)
 
~enable_shared_from_this (T... args)
 
- Public Member Functions inherited from Ase::CustomDataContainer
template<class T >
void set_custom_data (CustomDataKey< T > *key, T data)
 Assign data to the custom keyed data member, deletes any previously set data.
 
template<class T >
get_custom_data (CustomDataKey< T > *key) const
 Retrieve contents of the custom keyed data member, returns DataKey::fallback if nothing was set.
 
template<class T >
bool has_custom_data (CustomDataKey< T > *key) const
 Retrieve wether contents of the custom keyed data member exists.
 
template<class T >
bool del_custom_data (CustomDataKey< T > *key)
 Delete the current contents of the custom keyed data member, invokes DataKey::destroy.
 
- Public Member Functions inherited from Ase::Gadget
ProjectImpl_project () const
 Find Project in parent ancestry.
 
virtual StringS list_properties ()
 List all property identifiers.
 
virtual PropertyP access_property (String ident)
 Retrieve handle for a Property.
 
Value get_value (String ident)
 Get native property value.
 
bool set_value (String ident, const Value &v)
 Set native property value.
 
- Public Member Functions inherited from Ase::Device
Track_track () const
 Find Track in parent ancestry.
 

Static Public Member Functions

static TrackImplP from_trkn (tracktion::Track &)
 
- Static Public Member Functions inherited from Ase::DeviceImpl
static DeviceInfo extract_info (const String &aseid)
 

Protected Member Functions

String fallback_name () const override
 
void serialize (WritNode &xs) override
 Serialize members and childern.
 
void update_telemetry ()
 
- Protected Member Functions inherited from Ase::DeviceImpl
void _set_parent (GadgetImpl *parent) override
 Assign parent container.
 
virtual DeviceS list_devices ()
 
- Protected Member Functions inherited from Ase::GadgetImpl
uint64_t gadget_flags () const
 
uint64_t gadget_flags (uint64_t setbits, uint64_t mask=~uint64_t(0))
 
virtual void create_properties ()
 
- Protected Member Functions inherited from Ase::CustomDataContainer
void custom_data_destroy ()
 

Friends

class ProjectImpl
 
class TrackStateListener
 

Additional Inherited Members

- Public Attributes inherited from Ase::Emittable
const EventHandlereventhandler
 
- Protected Types inherited from Ase::GadgetImpl
enum  : uint64_t { GADGET_DESTROYED , DEVICE_ACTIVE , MASTER_TRACK }
 
- Static Protected Member Functions inherited from Ase::GadgetImpl
static String canonify_key (const String &input)
 
- Protected Attributes inherited from Ase::GadgetImpl
PropertyImplS props_
 

Detailed Description

Ase::Track implementation.

Definition at line 11 of file track.hh.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Definition at line 55 of file track.hh.

Constructor & Destructor Documentation

◆ TrackImpl() [1/2]

Ase::TrackImpl::TrackImpl ( ProjectImpl project,
bool  masterflag 
)
explicit

Definition at line 142 of file track.cc.

◆ TrackImpl() [2/2]

Ase::TrackImpl::TrackImpl ( tracktion::Track &  track)
explicit

Definition at line 133 of file track.cc.

Member Function Documentation

◆ _activate()

void Ase::TrackImpl::_activate ( )
overridevirtual

Add AudioProcessor to the Engine and start processing.

Reimplemented from Ase::DeviceImpl.

Definition at line 194 of file track.cc.

References Ase::DeviceImpl::_activate(), Ase::GadgetImpl::_parent(), assert_return, and Ase::DeviceImpl::is_active().

◆ _deactivate()

void Ase::TrackImpl::_deactivate ( )
overridevirtual

Stop processing the corresponding AudioProcessor.

Reimplemented from Ase::DeviceImpl.

Definition at line 201 of file track.cc.

References Ase::DeviceImpl::_deactivate(), assert_return, and Ase::DeviceImpl::is_active().

◆ access_device()

DeviceP Ase::TrackImpl::access_device ( )
overridevirtual

Retrieve Device handle for this track.

Implements Ase::Track.

Definition at line 334 of file track.cc.

◆ clip_index()

ssize_t Ase::TrackImpl::clip_index ( const ClipImpl clip) const

Definition at line 306 of file track.cc.

◆ clip_succession()

int Ase::TrackImpl::clip_succession ( const ClipImpl clip) const

Definition at line 319 of file track.cc.

◆ create_audio_clip()

ClipP Ase::TrackImpl::create_audio_clip ( const String name,
double  start,
double  length 
)
overridevirtual

Create a new audio clip on this track.

Implements Ase::Track.

Definition at line 446 of file track.cc.

References std::string::c_str().

◆ create_midi_clip()

ClipP Ase::TrackImpl::create_midi_clip ( const String name,
double  start,
double  length 
)
overridevirtual

Create a new MIDI clip on this track.

Implements Ase::Track.

Definition at line 426 of file track.cc.

References std::string::c_str().

◆ create_monitor()

MonitorP Ase::TrackImpl::create_monitor ( int32  ochannel)
overridevirtual

Implements Ase::Track.

Definition at line 340 of file track.cc.

◆ device_info()

DeviceInfo Ase::TrackImpl::device_info ( )
overridevirtual

Describe this Device type.

Implements Ase::Device.

Definition at line 367 of file track.cc.

◆ fallback_name()

String Ase::TrackImpl::fallback_name ( ) const
overrideprotectedvirtual

Reimplemented from Ase::GadgetImpl.

Definition at line 177 of file track.cc.

◆ from_trkn()

TrackImplP Ase::TrackImpl::from_trkn ( tracktion::Track &  t)
static

Definition at line 124 of file track.cc.

◆ is_folder()

bool Ase::TrackImpl::is_folder ( ) const

Definition at line 30 of file track.hh.

◆ is_master()

bool Ase::TrackImpl::is_master ( ) const
overridevirtual

Flag set on the main output track.

Implements Ase::Track.

Definition at line 247 of file track.cc.

Referenced by remove_self().

◆ is_muted()

bool Ase::TrackImpl::is_muted ( ) const
overridevirtual

Check if track is muted.

Implements Ase::Track.

Definition at line 217 of file track.cc.

◆ is_solo()

bool Ase::TrackImpl::is_solo ( ) const
overridevirtual

Check if track is soloed.

Implements Ase::Track.

Definition at line 232 of file track.cc.

◆ launcher_clips()

ClipS Ase::TrackImpl::launcher_clips ( )
overridevirtual

Retrieve the list of clips that can be directly played.

Implements Ase::Track.

Definition at line 293 of file track.cc.

◆ midi_channel() [1/2]

int32 Ase::TrackImpl::midi_channel ( ) const
overridevirtual

Midi channel assigned to this track, 0 uses internal per-track channel.

Implements Ase::Track.

Definition at line 47 of file track.hh.

◆ midi_channel() [2/2]

void Ase::TrackImpl::midi_channel ( int32  midichannel)
overridevirtual

Implements Ase::Track.

Definition at line 208 of file track.cc.

◆ name() [1/2]

String Ase::TrackImpl::name ( ) const
overridevirtual

Reimplemented from Ase::GadgetImpl.

Definition at line 156 of file track.cc.

◆ name() [2/2]

void Ase::TrackImpl::name ( const std::string n)
overridevirtual

Reimplemented from Ase::GadgetImpl.

Definition at line 164 of file track.cc.

◆ pan() [1/2]

double Ase::TrackImpl::pan ( ) const
overridevirtual

Get track pan (-1.0 to 1.0).

Implements Ase::Track.

Definition at line 274 of file track.cc.

Referenced by pan().

◆ pan() [2/2]

void Ase::TrackImpl::pan ( double  pan)
overridevirtual

Set track pan (-1.0 to 1.0).

Implements Ase::Track.

Definition at line 284 of file track.cc.

References pan().

◆ project()

ProjectImpl * Ase::TrackImpl::project ( ) const

Definition at line 171 of file track.cc.

◆ remove_self()

void Ase::TrackImpl::remove_self ( )
overridevirtual

Remove self from parent container.

Reimplemented from Ase::GadgetImpl.

Definition at line 373 of file track.cc.

References is_master(), Ase::GadgetImpl::remove_self(), and return_unless.

◆ serialize()

void Ase::TrackImpl::serialize ( WritNode xs)
overrideprotectedvirtual

Serialize members and childern.

Reimplemented from Ase::GadgetImpl.

Definition at line 189 of file track.cc.

◆ set_muted()

void Ase::TrackImpl::set_muted ( bool  muted)
overridevirtual

Set track muted state.

Implements Ase::Track.

Definition at line 225 of file track.cc.

◆ set_solo()

void Ase::TrackImpl::set_solo ( bool  solo)
overridevirtual

Set track solo state.

Implements Ase::Track.

Definition at line 240 of file track.cc.

◆ telemetry()

TelemetryFieldS Ase::TrackImpl::telemetry ( ) const
overridevirtual

Create signal monitor for an output channel.

Retrieve track telemetry locations.

Implements Ase::Track.

Definition at line 346 of file track.cc.

References return_unless.

◆ update_telemetry()

void Ase::TrackImpl::update_telemetry ( )
protected

Definition at line 357 of file track.cc.

◆ volume() [1/2]

double Ase::TrackImpl::volume ( ) const
overridevirtual

Get track volume in dB.

Implements Ase::Track.

Definition at line 255 of file track.cc.

◆ volume() [2/2]

void Ase::TrackImpl::volume ( double  db)
overridevirtual

Set track volume in dB.

Implements Ase::Track.

Definition at line 265 of file track.cc.

Friends And Related Symbol Documentation

◆ ProjectImpl

friend class ProjectImpl
friend

Definition at line 19 of file track.hh.

◆ TrackStateListener

friend class TrackStateListener
friend

Definition at line 20 of file track.hh.


The documentation for this class was generated from the following files: