X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fdelivery.h;h=743854027deddb4f77db0c910c179ca16d9d6d13;hb=da9b82732eed632d8b940818382f7eb369100964;hp=309eff85111aad987d6e66c5cdb9a3eae24d51ed;hpb=ca84e02b48e0c36755963a35713d272c409d9317;p=ardour.git diff --git a/libs/ardour/ardour/delivery.h b/libs/ardour/ardour/delivery.h index 309eff8511..743854027d 100644 --- a/libs/ardour/ardour/delivery.h +++ b/libs/ardour/ardour/delivery.h @@ -74,8 +74,9 @@ public: void flush_buffers (framecnt_t nframes, framepos_t time); void no_outs_cuz_we_no_monitor(bool); - void cycle_start (pframes_t); + virtual void cycle_start (pframes_t); void transport_stopped (framepos_t frame); + void realtime_locate (); BufferSet& output_buffers() { return *_output_buffers; } @@ -94,30 +95,34 @@ public: boost::shared_ptr panner_shell() const { return _panshell; } boost::shared_ptr panner() const; + void unpan (); void reset_panner (); void defer_pan_reset (); void allow_pan_reset (); uint32_t pans_required() const { return _configured_input.n_audio(); } + virtual uint32_t pan_outs() const; protected: Role _role; BufferSet* _output_buffers; gain_t _current_gain; - bool _no_outs_cuz_we_no_monitor; - boost::shared_ptr _mute_master; - bool no_panner_reset; boost::shared_ptr _panshell; - framecnt_t scnt; + gain_t target_gain (); + + private: + bool _no_outs_cuz_we_no_monitor; + boost::shared_ptr _mute_master; + static bool panners_legal; - static PBD::Signal0 PannersLegal; + static PBD::Signal0 PannersLegal; int panners_became_legal (); PBD::ScopedConnection panner_legal_c; void output_changed (IOChange, void*); - gain_t target_gain (); + bool _no_panner_reset; };