Anklang-0.3.0-1416-gfa8ce8d2 anklang-0.3.0-1416-gfa8ce8d2
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
 
DeviceInfo device_info () override
 Describe this Device type.
 
ProjectImpl * project () const
 
bool is_master () const override
 Flag set on the main output track.
 
bool is_control_track () const override
 Flag set on tempo/marker/chord/arranger/master tracks.
 
bool muted () const override
 Check if track is muted.
 
void muted (bool muted) override
 Set track muted state.
 
bool hidden () const override
 Check if track is hidden from view.
 
void hidden (bool hidden) override
 Set track hidden state.
 
bool solo () const override
 Check if track is soloed.
 
void solo (bool solo) override
 Set track solo state.
 
float volume_db () const override
 Get track volume in dB.
 
void volume_db (float db) override
 Set track volume in dB.
 
float slider_pos () const override
 Get track volume fader position.
 
void slider_pos (float pos) override
 Set track volume fader position.
 
float pan () const override
 Get track pan (-1.0 to 1.0).
 
void pan (float pan) override
 Set track pan (-1.0 to 1.0).
 
void remove_self () override
 Remove self from parent container.
 
StringS read_only_properties () const override
 List x()/x (v) properties that this object can't change, their setters ignore the value or warn.
 
ClipS launcher_clips () const override
 Retrieve the list of clips that can be directly played; changes on notify:launcher_clips.
 
void launcher_clips (const ClipS &) override
 NOP setter, assignments are ignored.
 
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.
 
PluginP create_plugin (const String &type) override
 Create a new plugin on this track by type identifier.
 
PluginS list_plugins () override
 List plugins on this track.
 
- 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 >
T enable_shared_from_this (T... args)
 
T operator= (T... args)
 
T shared_from_this (T... args)
 
T weak_from_this (T... args)
 
T ~enable_shared_from_this (T... args)
 
- 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.
 

Static Public Member Functions

static TrackImplP from_trkn (tracktion::Track &)
 

Protected Member Functions

void update_telemetry ()
 
- 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 ()
 

Friends

class ProjectImpl
 
class TrackStateListener
 

Additional Inherited Members

- Public Attributes inherited from Ase::Emittable
const EventHandler & eventhandler
 
- 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 10 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 159 of file track.cc.

◆ TrackImpl() [2/2]

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

Definition at line 150 of file track.cc.

Member Function Documentation

◆ access_device()

DeviceP Ase::TrackImpl::access_device ( )
overridevirtual

Retrieve Device handle for this track.

Implements Ase::Track.

Definition at line 379 of file track.cc.

◆ clip_index()

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

Definition at line 351 of file track.cc.

◆ clip_succession()

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

Definition at line 364 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 491 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 471 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 385 of file track.cc.

◆ create_plugin()

PluginP Ase::TrackImpl::create_plugin ( const String &  type)
overridevirtual

Create a new plugin on this track by type identifier.

Implements Ase::Track.

Definition at line 511 of file track.cc.

References std::string::c_str().

◆ device_info()

DeviceInfo Ase::TrackImpl::device_info ( )
overridevirtual

Describe this Device type.

Implements Ase::Device.

Definition at line 412 of file track.cc.

◆ from_trkn()

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

Definition at line 141 of file track.cc.

◆ hidden() [1/2]

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

Check if track is hidden from view.

Implements Ase::Track.

Definition at line 213 of file track.cc.

Referenced by hidden().

◆ hidden() [2/2]

void Ase::TrackImpl::hidden ( bool  hidden)
overridevirtual

Set track hidden state.

Implements Ase::Track.

Definition at line 221 of file track.cc.

References hidden().

◆ is_control_track()

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

Flag set on tempo/marker/chord/arranger/master tracks.

Implements Ase::Track.

Definition at line 251 of file track.cc.

References is_master().

◆ is_folder()

bool Ase::TrackImpl::is_folder ( ) const

Definition at line 27 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 243 of file track.cc.

Referenced by is_control_track(), and remove_self().

◆ launcher_clips() [1/2]

ClipS Ase::TrackImpl::launcher_clips ( ) const
overridevirtual

Retrieve the list of clips that can be directly played; changes on notify:launcher_clips.

Implements Ase::Track.

Definition at line 331 of file track.cc.

References std::vector::push_back().

◆ launcher_clips() [2/2]

void Ase::TrackImpl::launcher_clips ( const ClipS &  )
overridevirtual

NOP setter, assignments are ignored.

Implements Ase::Track.

Definition at line 344 of file track.cc.

◆ list_plugins()

PluginS Ase::TrackImpl::list_plugins ( )
overridevirtual

List plugins on this track.

Implements Ase::Track.

Definition at line 528 of file track.cc.

◆ muted() [1/2]

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

Check if track is muted.

Implements Ase::Track.

Definition at line 198 of file track.cc.

Referenced by muted().

◆ muted() [2/2]

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

Set track muted state.

Implements Ase::Track.

Definition at line 206 of file track.cc.

References muted().

◆ name() [1/2]

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

Implements Ase::Gadget.

Definition at line 173 of file track.cc.

◆ name() [2/2]

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

Implements Ase::Gadget.

Definition at line 181 of file track.cc.

◆ pan() [1/2]

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

Get track pan (-1.0 to 1.0).

Implements Ase::Track.

Definition at line 302 of file track.cc.

Referenced by pan().

◆ pan() [2/2]

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

Set track pan (-1.0 to 1.0).

Implements Ase::Track.

Definition at line 310 of file track.cc.

References pan().

◆ project()

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

Definition at line 192 of file track.cc.

◆ read_only_properties()

StringS Ase::TrackImpl::read_only_properties ( ) const
overridevirtual

List x()/x (v) properties that this object can't change, their setters ignore the value or warn.

Reimplemented from Ase::Gadget.

Definition at line 317 of file track.cc.

References std::vector::end(), std::vector::insert(), and std::vector::push_back().

◆ remove_self()

void Ase::TrackImpl::remove_self ( )
overridevirtual

Remove self from parent container.

Reimplemented from Ase::GadgetImpl.

Definition at line 418 of file track.cc.

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

◆ slider_pos() [1/2]

float Ase::TrackImpl::slider_pos ( ) const
overridevirtual

Get track volume fader position.

Implements Ase::Track.

Definition at line 287 of file track.cc.

◆ slider_pos() [2/2]

void Ase::TrackImpl::slider_pos ( float  pos)
overridevirtual

Set track volume fader position.

Implements Ase::Track.

Definition at line 295 of file track.cc.

◆ solo() [1/2]

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

Check if track is soloed.

Implements Ase::Track.

Definition at line 228 of file track.cc.

Referenced by solo().

◆ solo() [2/2]

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

Set track solo state.

Implements Ase::Track.

Definition at line 236 of file track.cc.

References solo().

◆ telemetry()

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

Create signal monitor for an output channel.

Retrieve track telemetry locations.

Implements Ase::Track.

Definition at line 391 of file track.cc.

References return_unless.

◆ update_telemetry()

void Ase::TrackImpl::update_telemetry ( )
protected

Definition at line 402 of file track.cc.

◆ volume_db() [1/2]

float Ase::TrackImpl::volume_db ( ) const
overridevirtual

Get track volume in dB.

Implements Ase::Track.

Definition at line 272 of file track.cc.

◆ volume_db() [2/2]

void Ase::TrackImpl::volume_db ( float  db)
overridevirtual

Set track volume in dB.

Implements Ase::Track.

Definition at line 280 of file track.cc.

Friends And Related Symbol Documentation

◆ ProjectImpl

friend class ProjectImpl
friend

Definition at line 18 of file track.hh.

◆ TrackStateListener

friend class TrackStateListener
friend

Definition at line 19 of file track.hh.


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