Anklang-0.3.0-1416-gfa8ce8d2 anklang-0.3.0-1416-gfa8ce8d2
ASE — Anklang Sound Engine (C++)

« « « Anklang Documentation
Loading...
Searching...
No Matches
api-jsonipc.g.cc
Go to the documentation of this file.
1 // Generated from: api-jsonipc.json
2#include <ase/jsonapi.hh>
3#include <ase/api.hh>
4
5static void
6jsonipc_for_api_jsonipc_json()
7{
9 enum__Ase_Error
10 .set (::Ase::Error::NONE, "NONE")
11 .set (::Ase::Error::PERMS, "PERMS")
12 .set (::Ase::Error::IO, "IO")
13 .set (::Ase::Error::NO_MEMORY, "NO_MEMORY")
14 .set (::Ase::Error::NO_SPACE, "NO_SPACE")
15 .set (::Ase::Error::NO_FILES, "NO_FILES")
16 .set (::Ase::Error::MANY_FILES, "MANY_FILES")
17 .set (::Ase::Error::RETRY, "RETRY")
18 .set (::Ase::Error::NOT_DIRECTORY, "NOT_DIRECTORY")
19 .set (::Ase::Error::FILE_NOT_FOUND, "FILE_NOT_FOUND")
20 .set (::Ase::Error::FILE_IS_DIR, "FILE_IS_DIR")
21 .set (::Ase::Error::FILE_EXISTS, "FILE_EXISTS")
22 .set (::Ase::Error::FILE_BUSY, "FILE_BUSY")
23 .set (::Ase::Error::INTERNAL, "INTERNAL")
24 .set (::Ase::Error::UNIMPLEMENTED, "UNIMPLEMENTED")
25 .set (::Ase::Error::FILE_EOF, "FILE_EOF")
26 .set (::Ase::Error::FILE_OPEN_FAILED, "FILE_OPEN_FAILED")
27 .set (::Ase::Error::FILE_SEEK_FAILED, "FILE_SEEK_FAILED")
28 .set (::Ase::Error::FILE_READ_FAILED, "FILE_READ_FAILED")
29 .set (::Ase::Error::FILE_WRITE_FAILED, "FILE_WRITE_FAILED")
30 .set (::Ase::Error::PARSE_ERROR, "PARSE_ERROR")
31 .set (::Ase::Error::NO_HEADER, "NO_HEADER")
32 .set (::Ase::Error::NO_SEEK_INFO, "NO_SEEK_INFO")
33 .set (::Ase::Error::NO_DATA_AVAILABLE, "NO_DATA_AVAILABLE")
34 .set (::Ase::Error::DATA_CORRUPT, "DATA_CORRUPT")
35 .set (::Ase::Error::WRONG_N_CHANNELS, "WRONG_N_CHANNELS")
36 .set (::Ase::Error::FORMAT_INVALID, "FORMAT_INVALID")
37 .set (::Ase::Error::FORMAT_UNKNOWN, "FORMAT_UNKNOWN")
38 .set (::Ase::Error::DATA_UNMATCHED, "DATA_UNMATCHED")
39 .set (::Ase::Error::CODEC_FAILURE, "CODEC_FAILURE")
40 .set (::Ase::Error::BROKEN_ARCHIVE, "BROKEN_ARCHIVE")
41 .set (::Ase::Error::BAD_PROJECT, "BAD_PROJECT")
42 .set (::Ase::Error::NO_PROJECT_DIR, "NO_PROJECT_DIR")
43 .set (::Ase::Error::DEVICE_NOT_AVAILABLE, "DEVICE_NOT_AVAILABLE")
44 .set (::Ase::Error::DEVICE_ASYNC, "DEVICE_ASYNC")
45 .set (::Ase::Error::DEVICE_BUSY, "DEVICE_BUSY")
46 .set (::Ase::Error::DEVICE_FORMAT, "DEVICE_FORMAT")
47 .set (::Ase::Error::DEVICE_BUFFER, "DEVICE_BUFFER")
48 .set (::Ase::Error::DEVICE_LATENCY, "DEVICE_LATENCY")
49 .set (::Ase::Error::DEVICE_CHANNELS, "DEVICE_CHANNELS")
50 .set (::Ase::Error::DEVICE_FREQUENCY, "DEVICE_FREQUENCY")
51 .set (::Ase::Error::DEVICES_MISMATCH, "DEVICES_MISMATCH")
52 .set (::Ase::Error::WAVE_NOT_FOUND, "WAVE_NOT_FOUND")
53 .set (::Ase::Error::INVALID_PROPERTY, "INVALID_PROPERTY")
54 .set (::Ase::Error::INVALID_MIDI_CONTROL, "INVALID_MIDI_CONTROL")
55 .set (::Ase::Error::OPERATION_BUSY, "OPERATION_BUSY")
56 ;
57 ::Jsonipc::Enum< ::Ase::MusicalTuning > enum__Ase_MusicalTuning;
58 enum__Ase_MusicalTuning
59 .set (::Ase::MusicalTuning::OD_12_TET, "OD_12_TET")
60 .set (::Ase::MusicalTuning::OD_7_TET, "OD_7_TET")
61 .set (::Ase::MusicalTuning::OD_5_TET, "OD_5_TET")
62 .set (::Ase::MusicalTuning::DIATONIC_SCALE, "DIATONIC_SCALE")
63 .set (::Ase::MusicalTuning::INDIAN_SCALE, "INDIAN_SCALE")
64 .set (::Ase::MusicalTuning::PYTHAGOREAN_TUNING, "PYTHAGOREAN_TUNING")
65 .set (::Ase::MusicalTuning::PENTATONIC_5_LIMIT, "PENTATONIC_5_LIMIT")
66 .set (::Ase::MusicalTuning::PENTATONIC_BLUES, "PENTATONIC_BLUES")
67 .set (::Ase::MusicalTuning::PENTATONIC_GOGO, "PENTATONIC_GOGO")
68 .set (::Ase::MusicalTuning::QUARTER_COMMA_MEANTONE, "QUARTER_COMMA_MEANTONE")
69 .set (::Ase::MusicalTuning::SILBERMANN_SORGE, "SILBERMANN_SORGE")
70 .set (::Ase::MusicalTuning::WERCKMEISTER_3, "WERCKMEISTER_3")
71 .set (::Ase::MusicalTuning::WERCKMEISTER_4, "WERCKMEISTER_4")
72 .set (::Ase::MusicalTuning::WERCKMEISTER_5, "WERCKMEISTER_5")
73 .set (::Ase::MusicalTuning::WERCKMEISTER_6, "WERCKMEISTER_6")
74 .set (::Ase::MusicalTuning::KIRNBERGER_3, "KIRNBERGER_3")
75 .set (::Ase::MusicalTuning::YOUNG, "YOUNG")
76 ;
77 ::Jsonipc::Enum< ::Ase::ResourceType > enum__Ase_ResourceType;
78 enum__Ase_ResourceType
79 .set (::Ase::ResourceType::FOLDER, "FOLDER")
80 .set (::Ase::ResourceType::FILE, "FILE")
81 ;
82 ::Jsonipc::Enum< ::Ase::UserNote::Flags > enum__Ase_UserNote_Flags;
83 enum__Ase_UserNote_Flags
84 .set (::Ase::UserNote::Flags::APPEND, "APPEND")
85 .set (::Ase::UserNote::Flags::CLEAR, "CLEAR")
86 .set (::Ase::UserNote::Flags::TRANSIENT, "TRANSIENT")
87 ;
88
89 ::Jsonipc::Serializable< ::Ase::Choice > serializable__Ase_Choice;
90 serializable__Ase_Choice
91 .set ("ident", &::Ase::Choice::ident)
92 .set ("icon", &::Ase::Choice::icon)
93 .set ("label", &::Ase::Choice::label)
94 .set ("blurb", &::Ase::Choice::blurb)
95 .set ("notice", &::Ase::Choice::notice)
96 .set ("warning", &::Ase::Choice::warning)
97 ;
98 ::Jsonipc::Serializable< ::Ase::TelemetryField > serializable__Ase_TelemetryField;
99 serializable__Ase_TelemetryField
104 ;
105 ::Jsonipc::Serializable< ::Ase::DeviceInfo > serializable__Ase_DeviceInfo;
106 serializable__Ase_DeviceInfo
107 .set ("uri", &::Ase::DeviceInfo::uri)
108 .set ("name", &::Ase::DeviceInfo::name)
109 .set ("category", &::Ase::DeviceInfo::category)
110 .set ("description", &::Ase::DeviceInfo::description)
111 .set ("website_url", &::Ase::DeviceInfo::website_url)
112 .set ("creator_name", &::Ase::DeviceInfo::creator_name)
113 .set ("creator_url", &::Ase::DeviceInfo::creator_url)
114 ;
115 ::Jsonipc::Serializable< ::Ase::ClipNote > serializable__Ase_ClipNote;
116 serializable__Ase_ClipNote
117 .set ("id", &::Ase::ClipNote::id)
118 .set ("note_number", &::Ase::ClipNote::note_number)
119 .set ("start_beat", &::Ase::ClipNote::start_beat)
120 .set ("length_beats", &::Ase::ClipNote::length_beats)
121 .set ("velocity", &::Ase::ClipNote::velocity)
122 .set ("colour", &::Ase::ClipNote::colour)
123 .set ("mute", &::Ase::ClipNote::mute)
124 ;
125 ::Jsonipc::Serializable< ::Ase::TimeRange > serializable__Ase_TimeRange;
126 serializable__Ase_TimeRange
127 .set ("start", &::Ase::TimeRange::start)
128 .set ("end", &::Ase::TimeRange::end)
129 ;
130 ::Jsonipc::Serializable< ::Ase::ClipPosition > serializable__Ase_ClipPosition;
131 serializable__Ase_ClipPosition
132 .set ("time", &::Ase::ClipPosition::time)
133 .set ("offset", &::Ase::ClipPosition::offset)
134 ;
135 ::Jsonipc::Serializable< ::Ase::ProbeFeatures > serializable__Ase_ProbeFeatures;
136 serializable__Ase_ProbeFeatures
137 .set ("probe_range", &::Ase::ProbeFeatures::probe_range)
138 .set ("probe_energy", &::Ase::ProbeFeatures::probe_energy)
139 .set ("probe_samples", &::Ase::ProbeFeatures::probe_samples)
140 .set ("probe_fft", &::Ase::ProbeFeatures::probe_fft)
141 ;
142 ::Jsonipc::Serializable< ::Ase::Resource > serializable__Ase_Resource;
143 serializable__Ase_Resource
144 .set ("type", &::Ase::Resource::type)
145 .set ("label", &::Ase::Resource::label)
146 .set ("uri", &::Ase::Resource::uri)
147 .set ("size", &::Ase::Resource::size)
148 .set ("mtime", &::Ase::Resource::mtime)
149 ;
150 ::Jsonipc::Serializable< ::Ase::UserNote > serializable__Ase_UserNote;
151 serializable__Ase_UserNote
152 .set ("noteid", &::Ase::UserNote::noteid)
153 .set ("flags", &::Ase::UserNote::flags)
154 .set ("channel", &::Ase::UserNote::channel)
155 .set ("text", &::Ase::UserNote::text)
156 .set ("rest", &::Ase::UserNote::rest)
157 ;
158 ::Jsonipc::Serializable< ::Ase::TelemetrySegment > serializable__Ase_TelemetrySegment;
159 serializable__Ase_TelemetrySegment
162 ;
163 ::Jsonipc::Serializable< ::Ase::UiConfig > serializable__Ase_UiConfig;
164 serializable__Ase_UiConfig
165 .set ("has_ui_tests", &::Ase::UiConfig::has_ui_tests)
166 .set ("auto_exit", &::Ase::UiConfig::auto_exit)
167 ;
168
169 ::Jsonipc::Class< ::Ase::Emittable > class__Ase_Emittable;
170 class__Ase_Emittable
171 .inherit< ::Ase::SharedBase >()
172 .set ("emit_event", &::Ase::Emittable::emit_event)
173 .set ("emit_notify", &::Ase::Emittable::emit_notify)
174 .set ("js_trigger", &::Ase::Emittable::js_trigger)
175 ;
176
177 ::Jsonipc::Class< ::Ase::Property > class__Ase_Property;
178 class__Ase_Property
179 .inherit< ::Ase::Emittable >()
182 .set ("name", &::Ase::Property::name, &::Ase::Property::name)
183 .set ("metadata", &::Ase::Property::metadata, &::Ase::Property::metadata)
184 .set ("ident", &::Ase::Property::ident)
185 .set ("label", &::Ase::Property::label)
186 .set ("nick", &::Ase::Property::nick)
187 .set ("unit", &::Ase::Property::unit)
188 .set ("get_min", &::Ase::Property::get_min)
189 .set ("get_max", &::Ase::Property::get_max)
190 .set ("get_step", &::Ase::Property::get_step)
191 .set ("reset", &::Ase::Property::reset)
193 .set ("get_normalized", &::Ase::Property::get_normalized)
194 .set ("set_normalized", &::Ase::Property::set_normalized)
195 .set ("get_text", &::Ase::Property::get_text)
196 .set ("set_text", &::Ase::Property::set_text)
197 .set ("is_numeric", &::Ase::Property::is_numeric)
198 .set ("choices", &::Ase::Property::choices)
199 .set ("hints", &::Ase::Property::hints)
200 .set ("blurb", &::Ase::Property::blurb)
201 .set ("descr", &::Ase::Property::descr)
202 .set ("group", &::Ase::Property::group)
203 ;
204
205 ::Jsonipc::Class< ::Ase::Object > class__Ase_Object;
206 class__Ase_Object
207 .inherit< ::Ase::Emittable >()
208 ;
209
210 ::Jsonipc::Class< ::Ase::Gadget > class__Ase_Gadget;
211 class__Ase_Gadget
212 .inherit< ::Ase::Object >()
213 .set ("name", &::Ase::Gadget::name, &::Ase::Gadget::name)
214 .set ("type_nick", &::Ase::Gadget::type_nick)
215 .set ("list_properties", &::Ase::Gadget::list_properties)
216 .set ("access_property", &::Ase::Gadget::access_property)
217 .set ("access_properties", &::Ase::Gadget::access_properties)
218 .set ("get_value", &::Ase::Gadget::get_value)
219 .set ("set_value", &::Ase::Gadget::set_value)
220 .set ("read_only_properties", &::Ase::Gadget::read_only_properties)
221 .set ("set_data", &::Ase::Gadget::set_data)
222 .set ("get_data", &::Ase::Gadget::get_data)
223 .set ("remove_self", &::Ase::Gadget::remove_self)
224 ;
225
226 ::Jsonipc::Class< ::Ase::Device > class__Ase_Device;
227 class__Ase_Device
228 .inherit< ::Ase::Gadget >()
229 .set ("device_info", &::Ase::Device::device_info)
230 ;
231
232 ::Jsonipc::Class< ::Ase::Plugin > class__Ase_Plugin;
233 class__Ase_Plugin
234 .inherit< ::Ase::Device >()
235 .set ("plugin_type", &::Ase::Plugin::plugin_type)
238 ;
239
240 ::Jsonipc::Class< ::Ase::Clip > class__Ase_Clip;
241 class__Ase_Clip
242 .inherit< ::Ase::Gadget >()
243 .set ("muted", &::Ase::Clip::muted, &::Ase::Clip::muted)
244 .set ("volume", &::Ase::Clip::volume, &::Ase::Clip::volume)
245 .set ("pan", &::Ase::Clip::pan, &::Ase::Clip::pan)
246 .set ("all_notes", &::Ase::Clip::all_notes, &::Ase::Clip::all_notes)
247 .set ("position", &::Ase::Clip::position, &::Ase::Clip::position)
249 .set ("end_beat", &::Ase::Clip::end_beat, &::Ase::Clip::end_beat)
250 .set ("change_batch", &::Ase::Clip::change_batch)
251 .set ("list_all_notes", &::Ase::Clip::list_all_notes)
252 .set ("telemetry", &::Ase::Clip::telemetry)
253 ;
254
255 ::Jsonipc::Class< ::Ase::Track > class__Ase_Track;
256 class__Ase_Track
257 .inherit< ::Ase::Device >()
258 .set ("is_master", &::Ase::Track::is_master)
259 .set ("is_control_track", &::Ase::Track::is_control_track)
262 .set ("solo", &::Ase::Track::solo, &::Ase::Track::solo)
265 .set ("pan", &::Ase::Track::pan, &::Ase::Track::pan)
267 .set ("create_midi_clip", &::Ase::Track::create_midi_clip)
268 .set ("create_audio_clip", &::Ase::Track::create_audio_clip)
269 .set ("create_plugin", &::Ase::Track::create_plugin)
270 .set ("list_plugins", &::Ase::Track::list_plugins)
271 .set ("access_device", &::Ase::Track::access_device)
272 .set ("create_monitor", &::Ase::Track::create_monitor)
273 .set ("telemetry", &::Ase::Track::telemetry)
274 ;
275
276 ::Jsonipc::Class< ::Ase::Monitor > class__Ase_Monitor;
277 class__Ase_Monitor
278 .inherit< ::Ase::Gadget >()
279 .set ("get_output", &::Ase::Monitor::get_output)
280 .set ("get_ochannel", &::Ase::Monitor::get_ochannel)
281 .set ("get_mix_freq", &::Ase::Monitor::get_mix_freq)
282 .set ("get_frame_duration", &::Ase::Monitor::get_frame_duration)
283 ;
284
285 ::Jsonipc::Class< ::Ase::Project > class__Ase_Project;
286 class__Ase_Project
287 .inherit< ::Ase::Device >()
288 .set ("bpm", &::Ase::Project::bpm, &::Ase::Project::bpm)
289 .set ("numerator", &::Ase::Project::numerator, &::Ase::Project::numerator)
290 .set ("denominator", &::Ase::Project::denominator, &::Ase::Project::denominator)
291 .set ("discard", &::Ase::Project::discard)
292 .set ("start_playback", &::Ase::Project::start_playback)
293 .set ("pause_playback", &::Ase::Project::pause_playback)
294 .set ("stop_playback", &::Ase::Project::stop_playback)
296 .set ("create_track", &::Ase::Project::create_track)
298 .set ("master_track", &::Ase::Project::master_track)
299 .set ("save_project", &::Ase::Project::save_project)
300 .set ("saved_filename", &::Ase::Project::saved_filename)
301 .set ("load_project", &::Ase::Project::load_project)
302 .set ("telemetry", &::Ase::Project::telemetry)
303 .set ("group_undo", &::Ase::Project::group_undo)
304 .set ("ungroup_undo", &::Ase::Project::ungroup_undo)
305 .set ("undo", &::Ase::Project::undo)
306 .set ("can_undo", &::Ase::Project::can_undo)
307 .set ("redo", &::Ase::Project::redo)
308 .set ("can_redo", &::Ase::Project::can_redo)
310 .set ("match_serialized", &::Ase::Project::match_serialized)
311 ;
312
313 ::Jsonipc::Class< ::Ase::ResourceCrawler > class__Ase_ResourceCrawler;
314 class__Ase_ResourceCrawler
315 .inherit< ::Ase::Object >()
318 .set ("assign", &::Ase::ResourceCrawler::assign)
319 .set ("canonify", &::Ase::ResourceCrawler::canonify)
320 ;
321
322 ::Jsonipc::Class< ::Ase::Server > class__Ase_Server;
323 class__Ase_Server
324 .inherit< ::Ase::Gadget >()
325 .set ("shutdown", &::Ase::Server::shutdown)
326 .set ("get_version", &::Ase::Server::get_version)
327 .set ("get_build_id", &::Ase::Server::get_build_id)
328 .set ("get_opus_version", &::Ase::Server::get_opus_version)
329 .set ("get_flac_version", &::Ase::Server::get_flac_version)
330 .set ("get_sndfile_version", &::Ase::Server::get_sndfile_version)
331 .set ("error_blurb", &::Ase::Server::error_blurb)
332 .set ("musical_tuning_label", &::Ase::Server::musical_tuning_label)
333 .set ("musical_tuning_blurb", &::Ase::Server::musical_tuning_blurb)
334 .set ("user_note", &::Ase::Server::user_note)
335 .set ("user_reply", &::Ase::Server::user_reply)
336 .set ("broadcast_telemetry", &::Ase::Server::broadcast_telemetry)
337 .set ("list_preferences", &::Ase::Server::list_preferences)
338 .set ("access_preference", &::Ase::Server::access_preference)
339 .set ("ui_config", &::Ase::Server::ui_config)
340 .set ("ui_test_fetch", &::Ase::Server::ui_test_fetch)
341 .set ("ui_test_report", &::Ase::Server::ui_test_report)
342 .set ("ui_js_fetch", &::Ase::Server::ui_js_fetch)
343 .set ("engine_stats", &::Ase::Server::engine_stats)
344 .set ("exit_program", &::Ase::Server::exit_program)
345 .set ("last_project", &::Ase::Server::last_project)
346 .set ("create_project", &::Ase::Server::create_project)
347 .set ("dir_crawler", &::Ase::Server::dir_crawler)
348 .set ("url_crawler", &::Ase::Server::url_crawler)
349 ;
350}
351[[maybe_unused]] static bool init_jsonipc = [] {
352 if (getenv ("ASE_JSONTS"))
353 Jsonipc::g_binding_printer = new Jsonipc::BindingPrinter();
354 jsonipc_for_api_jsonipc_json();
355 return 0;
356} ();
virtual double end_beat() const =0
Clip end in Tracktion beats, changes on notify:end_beat.
virtual float pan() const =0
Get audio clip pan (-1.0 to 1.0), 0 for other clips.
virtual ClipNoteS change_batch(const ClipNoteS &notes, const String &undogroup="")=0
Insert id <= 0, delete length_beats == 0; emits notify:notes and notify:all_notes.
virtual float volume() const =0
Get clip volume in dB.
virtual double start_beat() const =0
Clip start in Tracktion beats, changes on notify:start_beat.
virtual bool muted() const =0
Check if clip is muted.
virtual ClipNoteS list_all_notes()=0
List all notes of this Clip, changes on notify:notes.
virtual TelemetryFieldS telemetry() const =0
Retrieve clip telemetry locations.
Interface to access Device instances.
Definition api.hh:213
virtual DeviceInfo device_info()=0
Describe this Device type.
Base type for classes with Event subscription.
Definition api.hh:120
Base type for classes that have a Property.
Definition api.hh:173
virtual StringS list_properties()
List all property identifiers.
Definition gadget.cc:109
virtual Value get_data(const String &key) const =0
Retrieve session data.
virtual PropertyP access_property(String ident)
Retrieve handle for a Property.
Definition gadget.cc:120
virtual PropertyS access_properties()=0
Retrieve handles for all properties.
virtual void remove_self()=0
Remove self from parent container.
virtual StringS read_only_properties() const
List x()/x (v) properties that this object can't change, their setters ignore the value or warn.
Definition gadget.cc:103
virtual bool set_data(const String &key, const Value &v)=0
Assign session data, prefix ephemerals with '_'.
Value get_value(String ident)
Get native property value.
Definition gadget.cc:129
bool set_value(String ident, const Value &v)
Set native property value.
Definition gadget.cc:136
virtual int64 get_mix_freq()=0
Mix frequency at which monitor values are calculated.
virtual int64 get_frame_duration()=0
Frame duration in µseconds for the calculation of monitor values.
virtual int32 get_ochannel()=0
Retrieve output channel the Monitor is connected to.
virtual DeviceP get_output()=0
Retrieve output device the Monitor is connected to.
Base type for classes with Property interfaces.
Definition api.hh:166
virtual bool frozen() const =0
Check if plugin is frozen.
virtual bool enabled() const =0
Check if plugin is enabled.
virtual String plugin_type() const =0
Plugin type identifier.
virtual void undo()=0
Undo the last project modification.
virtual Error save_project(const String &utf8filename, bool collect)=0
Store Project and collect external files.
virtual TrackP create_track()=0
Create and append a new Track.
virtual TelemetryFieldS telemetry() const =0
Retrieve project telemetry locations.
virtual TrackP master_track()=0
Retrieve the master track.
virtual void ungroup_undo()=0
Stop merging undo steps.
virtual void start_playback()=0
Start playback of a project, requires active sound engine.
virtual void group_undo(const String &undoname)=0
Merge upcoming undo steps.
virtual void stop_playback()=0
Stop project playback.
virtual bool can_undo()=0
Check if any undo steps have been recorded.
virtual void pause_playback()=0
Pause playback at the current position.
virtual bool is_playing() const =0
Check whether a project is currently playing (song sequencing).
virtual void redo()=0
Redo the last undo modification.
virtual TrackS all_tracks() const =0
List all tracks, changes on notify:all_tracks.
virtual void discard()=0
Discard project and associated resources.
virtual String match_serialized(const String &regex, int group=0)=0
Match regex against the serialized project state.
virtual Error load_project(const String &utf8filename)=0
Load project from file filename.
virtual double length() const =0
End time of the last clip in seconds, changes on notify:length.
virtual String saved_filename()=0
Retrieve UTF-8 filename for save or from load.
virtual bool can_redo()=0
Check if any redo steps have been recorded.
virtual double get_normalized() const =0
Get the normalized property value, converted to double.
String descr() const
Elaborate description, e.g. for help dialogs (metadata).
Definition parameter.cc:467
virtual String get_text() const =0
Get the current property value, converted to a text String.
String blurb() const
Short description for user interface tooltips (metadata).
Definition parameter.cc:461
virtual ChoiceS choices() const =0
Enumerate choices for choosable properties.
virtual double get_max() const =0
Get the maximum property value, converted to double.
virtual double get_step() const =0
Get the property value stepping, converted to double.
virtual bool set_normalized(double v)=0
Set the normalized property value as double.
virtual String label() const =0
Preferred user interface name.
virtual bool is_numeric() const =0
Whether the property settings can be represented as a floating point number.
virtual String nick() const =0
Abbreviated user interface name, usually not more than 6 characters.
String hints() const
Hints for parameter handling (metadata).
Definition parameter.cc:455
virtual String ident() const =0
Unique name (per owner) of this Property.
virtual Value value() const =0
Get the native property value.
String group() const
Group name for parameters of similar function (metadata).
Definition parameter.cc:473
virtual bool set_text(String v)=0
Set the current property value as a text String.
virtual double get_min() const =0
Get the minimum property value, converted to double.
virtual String unit() const =0
Units of the values within range.
virtual void reset()=0
Assign default as normalized property value.
virtual String2 assign(const String &utf8path, bool existingfile=false)=0
Move to a different path.
virtual Resource folder() const =0
Describe current folder.
virtual ResourceS entries() const =0
List entries of a folder.
virtual Resource canonify(const String &utf8cwd, const String &utf8fragment, bool constraindir, bool constrainfile)=0
Return absolute path, slash-terminated if directory, constrain to existing paths.
virtual ProjectP create_project(String projectname)=0
Create a new project (name is modified to be unique if necessary.
virtual ProjectP last_project()=0
Retrieve the last created project.
virtual String get_version()=0
Retrieve ASE version.
virtual void shutdown()=0
Shutdown ASE.
virtual PropertyP access_preference(const String &ident)=0
Retrieve property handle for a Preference identifier.
virtual String get_opus_version()=0
Retrieve Opus handler version.
virtual String ui_test_fetch()=0
Fetch next UI test name to run (empty if none).
virtual String get_build_id()=0
Retrieve ASE build id.
virtual String get_flac_version()=0
Retrieve FLAC handler version.
virtual void ui_test_report(const String &testname, bool success)=0
Report UI test result.
virtual String get_sndfile_version()=0
Retrieve libsndfile support version.
ResourceCrawlerP url_crawler(const String &url)
Create crawler to navigate URL contents.
Definition server.cc:223
ResourceCrawlerP dir_crawler(const String &cwd)
Create crawler to navigate directories.
Definition server.cc:217
virtual StringS list_preferences()=0
Retrieve a list of all preference identifiers.
virtual String ui_js_fetch()=0
Fetch UI JS script to run (empty if none).
String engine_stats()
Print engine state.
Definition server.cc:234
void exit_program(int status=0)
End program (without saving).
Definition server.cc:242
virtual UiConfig ui_config()=0
Retrieve UI configuration values.
virtual bool broadcast_telemetry(const TelemetrySegmentS &segments, int32 interval_ms)=0
Broadcast telemetry memory segments to the current Jsonipc connection.
Common base type for polymorphic classes managed by std::shared_ptr<>.
Definition api.hh:18
virtual bool solo() const =0
Check if track is soloed.
virtual bool muted() const =0
Check if track is muted.
virtual bool is_master() const =0
Flag set on the main output track.
virtual float volume_db() const =0
Get track volume in dB.
virtual float pan() const =0
Get track pan (-1.0 to 1.0).
virtual PluginS list_plugins()=0
List plugins on this track.
virtual bool hidden() const =0
Check if track is hidden from view.
virtual ClipP create_audio_clip(const String &name, double start, double length)=0
Create a new audio clip on this track.
virtual ClipP create_midi_clip(const String &name, double start, double length)=0
Create a new MIDI clip on this track.
virtual float slider_pos() const =0
Get track volume fader position.
virtual ClipS launcher_clips() const =0
Retrieve the list of clips that can be directly played; changes on notify:launcher_clips.
virtual DeviceP access_device()=0
Retrieve Device handle for this track.
virtual PluginP create_plugin(const String &type)=0
Create a new plugin on this track by type identifier.
virtual bool is_control_track() const =0
Flag set on tempo/marker/chord/arranger/master tracks.
virtual TelemetryFieldS telemetry() const =0
Create signal monitor for an output channel.
ResourceType type
Resource classification.
Definition api.hh:368
bool has_ui_tests
Whether any UI tests are pending.
Definition api.hh:407
String creator_name
Name of the creator.
Definition api.hh:208
bool probe_samples
Provide probe with bare sample values.
Definition api.hh:309
bool probe_range
Provide sample range probes.
Definition api.hh:307
String type
Types like "i32", "f32", "f64".
Definition api.hh:114
String name
Preferred user interface name.
Definition api.hh:204
int64_t offset
Position in bytes.
Definition api.hh:115
String name
Names like "bpm", etc.
Definition api.hh:113
String creator_url
Internet contact of the creator.
Definition api.hh:209
String uri
Unique identifier for de-/serialization.
Definition api.hh:203
int64 size
Resource size.
Definition api.hh:371
int32 offset
Position in bytes.
Definition api.hh:401
bool auto_exit
Whether to auto-exit after tests complete.
Definition api.hh:408
String description
Elaborate description for help dialogs.
Definition api.hh:206
int32 length
Length in bytes.
Definition api.hh:402
int32 length
Length in bytes.
Definition api.hh:116
String uri
Unique resource identifier.
Definition api.hh:370
bool probe_energy
Provide sample energy measurement.
Definition api.hh:308
bool probe_fft
Provide FFT analysis probe.
Definition api.hh:310
String category
Category to allow grouping for processors of similar function.
Definition api.hh:205
String website_url
Website of/about this Processor.
Definition api.hh:207
int64 mtime
Modification time in milliseconds.
Definition api.hh:372
String label
UI display name.
Definition api.hh:369
String warning
Potential problem indicator.
Definition api.hh:101
String ident
Identifier used for serialization (may be derived from untranslated label).
Definition api.hh:96
String icon
Icon (64x64 pixels) or unicode symbol (possibly wide).
Definition api.hh:97
String notice
Additional information of interest.
Definition api.hh:100
String blurb
Short description for overviews.
Definition api.hh:99
String label
Preferred user interface name.
Definition api.hh:98
bool mute
Tracktion note colour index.
Definition api.hh:236
int colour
Velocity, 0 .. 127.
Definition api.hh:235
double start_beat
Musical note as MIDI key, 0 .. 127.
Definition api.hh:232
int velocity
Duration in Tracktion beats.
Definition api.hh:234
int note_number
Session handle, > 0 for existing notes.
Definition api.hh:231
double length_beats
Position in Tracktion beats from the start of the clip.
Definition api.hh:233
Registers C++ enum values with string names for JSON serialization and TypeScript binding generation.
Definition jsonipc.hh:1111
Jsonipc wrapper type for objects that support field-wise serialization to/from JSON.
Definition jsonipc.hh:1214
Serializable & set(const char *name, A attribute)
Add a member object pointer.
Definition jsonipc.hh:1224