X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fslave.h;h=74cf4371b0e801e592512514a22aacfad0e44d76;hb=822234876169480a271ec4a67bd01aee791681f0;hp=959719eea03a55d095e867c413f533885d48b717;hpb=47018a3bd1990ef9328459640b6e6b385404eda6;p=ardour.git diff --git a/libs/ardour/ardour/slave.h b/libs/ardour/ardour/slave.h index 959719eea0..74cf4371b0 100644 --- a/libs/ardour/ardour/slave.h +++ b/libs/ardour/ardour/slave.h @@ -67,7 +67,7 @@ class Slave { * and after the method call they should * * Session::follow_slave will then try to follow the given - * position using a delay locked loop (DLL), + * position using a delay locked loop (DLL), * starting with the first given transport speed. * If the values of speed and position contradict each other, * ARDOUR will always follow the position and disregard the speed. @@ -113,7 +113,7 @@ class Slave { * @param position - The transport position requested * @return - The return value is currently ignored (see Session::follow_slave) */ - virtual bool speed_and_position (double& speed, nframes64_t& position) = 0; + virtual bool speed_and_position (double& speed, framepos_t& position) = 0; /** * reports to ARDOUR whether the Slave is currently synced to its external @@ -153,10 +153,10 @@ class Slave { /** * @return the number of frames that this slave wants to seek ahead. Relevant - * only if @func requires_seekahead() returns true. + * only if requires_seekahead() returns true. */ - virtual nframes64_t seekahead_distance() const { return 0; } + virtual framepos_t seekahead_distance() const { return 0; } /** * @return - when returning true, ARDOUR will use transport speed 1.0 no matter what @@ -176,12 +176,12 @@ class ISlaveSessionProxy { virtual ~ISlaveSessionProxy() {} virtual TempoMap& tempo_map() const { return *((TempoMap *) 0); } virtual nframes_t frame_rate() const { return 0; } - virtual nframes64_t audible_frame () const { return 0; } - virtual nframes64_t transport_frame () const { return 0; } + virtual framepos_t audible_frame () const { return 0; } + virtual framepos_t transport_frame () const { return 0; } virtual nframes_t frames_since_cycle_start () const { return 0; } - virtual nframes64_t frame_time () const { return 0; } + virtual framepos_t frame_time () const { return 0; } - virtual void request_locate (nframes64_t /*frame*/, bool with_roll = false) { + virtual void request_locate (framepos_t /*frame*/, bool with_roll = false) { (void) with_roll; } virtual void request_transport_speed (double /*speed*/) {} @@ -197,19 +197,19 @@ class SlaveSessionProxy : public ISlaveSessionProxy { TempoMap& tempo_map() const; nframes_t frame_rate() const; - nframes64_t audible_frame () const; - nframes64_t transport_frame () const; + framepos_t audible_frame () const; + framepos_t transport_frame () const; nframes_t frames_since_cycle_start () const; - nframes64_t frame_time () const; + framepos_t frame_time () const; - void request_locate (nframes64_t frame, bool with_roll = false); + void request_locate (framepos_t frame, bool with_roll = false); void request_transport_speed (double speed); }; struct SafeTime { volatile int guard1; - nframes64_t position; - nframes64_t timestamp; + framepos_t position; + framepos_t timestamp; double speed; volatile int guard2; @@ -228,7 +228,7 @@ class MTC_Slave : public Slave { ~MTC_Slave (); void rebind (MIDI::Port&); - bool speed_and_position (double&, nframes64_t&); + bool speed_and_position (double&, framepos_t&); bool locked() const; bool ok() const; @@ -236,7 +236,7 @@ class MTC_Slave : public Slave { nframes_t resolution() const; bool requires_seekahead () const { return true; } - nframes64_t seekahead_distance() const; + framepos_t seekahead_distance() const; bool give_slave_full_control_over_transport_speed() const; private: @@ -249,13 +249,13 @@ class MTC_Slave : public Slave { static const int frame_tolerance; SafeTime current; - nframes_t mtc_frame; /* current time */ - nframes_t last_inbound_frame; /* when we got it; audio clocked */ + framepos_t mtc_frame; /* current time */ + framepos_t last_inbound_frame; /* when we got it; audio clocked */ MIDI::byte last_mtc_fps_byte; - nframes64_t window_begin; - nframes64_t window_end; - nframes64_t last_mtc_timestamp; - nframes64_t last_mtc_frame; + framepos_t window_begin; + framepos_t window_end; + framepos_t last_mtc_timestamp; + framepos_t last_mtc_frame; bool did_reset_tc_format; TimecodeFormat saved_tc_format; size_t speed_accumulator_size; @@ -275,8 +275,8 @@ class MTC_Slave : public Slave { void update_mtc_time (const MIDI::byte *, bool, nframes_t); void update_mtc_status (MIDI::MTC_Status); void read_current (SafeTime *) const; - void reset_window (nframes64_t); - bool outside_window (nframes64_t) const; + void reset_window (framepos_t); + bool outside_window (framepos_t) const; void process_apparent_speed (double); }; @@ -289,7 +289,7 @@ class MIDIClock_Slave : public Slave { ~MIDIClock_Slave (); void rebind (MIDI::Port&); - bool speed_and_position (double&, nframes64_t&); + bool speed_and_position (double&, framepos_t&); bool locked() const; bool ok() const; @@ -344,17 +344,17 @@ class MIDIClock_Slave : public Slave { double b, c, omega; void reset (); - void start (MIDI::Parser& parser, nframes64_t timestamp); - void contineu (MIDI::Parser& parser, nframes64_t timestamp); - void stop (MIDI::Parser& parser, nframes64_t timestamp); + void start (MIDI::Parser& parser, framepos_t timestamp); + void contineu (MIDI::Parser& parser, framepos_t timestamp); + void stop (MIDI::Parser& parser, framepos_t timestamp); void position (MIDI::Parser& parser, MIDI::byte* message, size_t size); // we can't use continue because it is a C++ keyword - void calculate_one_ppqn_in_frames_at(nframes64_t time); - nframes64_t calculate_song_position(uint16_t song_position_in_sixteenth_notes); + void calculate_one_ppqn_in_frames_at(framepos_t time); + framepos_t calculate_song_position(uint16_t song_position_in_sixteenth_notes); void calculate_filter_coefficients(); - void update_midi_clock (MIDI::Parser& parser, nframes64_t timestamp); + void update_midi_clock (MIDI::Parser& parser, framepos_t timestamp); void read_current (SafeTime *) const; - bool stop_if_no_more_clock_events(nframes64_t& pos, nframes64_t now); + bool stop_if_no_more_clock_events(framepos_t& pos, framepos_t now); /// whether transport should be rolling bool _started; @@ -370,7 +370,7 @@ class JACK_Slave : public Slave JACK_Slave (jack_client_t*); ~JACK_Slave (); - bool speed_and_position (double& speed, nframes64_t& pos); + bool speed_and_position (double& speed, framepos_t& pos); bool starting() const { return _starting; } bool locked() const;