X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=libs%2Fsurfaces%2Fcontrol_protocol%2Fcontrol_protocol%2Fbasic_ui.h;h=277a7f8ecdc505e2679c8ebfb26898a2270988af;hb=8c9749e42faf7808034ed8b7afce4a2fe6dc6f33;hp=7bc6b25c32508ce8f6943e794a58df6424974001;hpb=99904735e066804358f1d0bd138a84f1e9ecda91;p=ardour.git diff --git a/libs/surfaces/control_protocol/control_protocol/basic_ui.h b/libs/surfaces/control_protocol/control_protocol/basic_ui.h index 7bc6b25c32..277a7f8ecd 100644 --- a/libs/surfaces/control_protocol/control_protocol/basic_ui.h +++ b/libs/surfaces/control_protocol/control_protocol/basic_ui.h @@ -22,37 +22,46 @@ #define __ardour_basic_ui_h__ #include +#include -#include -#include +#include "pbd/signals.h" + +#include "ardour/types.h" + +#include "timecode/time.h" + +#include "control_protocol/visibility.h" namespace ARDOUR { class Session; + class SessionEvent; } -class BasicUI { +class LIBCONTROLCP_API BasicUI { public: BasicUI (ARDOUR::Session&); virtual ~BasicUI (); - void add_marker (); + void add_marker (const std::string& = std::string()); void register_thread (std::string name); /* transport control */ void loop_toggle (); + void access_action ( std::string action_path ); + static PBD::Signal2 AccessAction; void goto_start (); void goto_end (); void rewind (); void ffwd (); void transport_stop (); void transport_play (bool jump_back = true); - void set_transport_speed (float speed); - float get_transport_speed (); + void set_transport_speed (double speed); + double get_transport_speed (); - jack_nframes_t transport_frame (); - void locate (jack_nframes_t frame, bool play = false); + ARDOUR::framepos_t transport_frame (); + void locate (ARDOUR::framepos_t frame, bool play = false); bool locating (); bool locked (); @@ -70,11 +79,11 @@ class BasicUI { void rec_enable_toggle (); void toggle_all_rec_enables (); - jack_nframes_t smpte_frames_per_hour (); + ARDOUR::framecnt_t timecode_frames_per_hour (); - void smpte_time (jack_nframes_t where, SMPTE::Time&); - void smpte_to_sample (SMPTE::Time& smpte, jack_nframes_t& sample, bool use_offset, bool use_subframes) const; - void sample_to_smpte (jack_nframes_t sample, SMPTE::Time& smpte, bool use_offset, bool use_subframes) const; + void timecode_time (framepos_t where, Timecode::Time&); + void timecode_to_sample (Timecode::Time& timecode, framepos_t & sample, bool use_offset, bool use_subframes) const; + void sample_to_timecode (framepos_t sample, Timecode::Time& timecode, bool use_offset, bool use_subframes) const; protected: BasicUI ();