X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fpanners%2F2in2out%2Fpanner_2in2out.h;h=f67ac1081b40b9167db48967957c42b10460dd7b;hb=e9ee454cedda06403a57d1e17239fa2fbfb36638;hp=b9b9a73dfb45c29c4559e62a71dfe92acc3d49e3;hpb=da144ab5edb5bb629a8300c2cbf93c7f87947a83;p=ardour.git diff --git a/libs/panners/2in2out/panner_2in2out.h b/libs/panners/2in2out/panner_2in2out.h index b9b9a73dfb..f67ac1081b 100644 --- a/libs/panners/2in2out/panner_2in2out.h +++ b/libs/panners/2in2out/panner_2in2out.h @@ -43,30 +43,34 @@ class Panner2in2out : public Panner Panner2in2out (boost::shared_ptr); ~Panner2in2out (); - ChanCount in() const { return ChanCount (DataType::AUDIO, 2); } - ChanCount out() const { return ChanCount (DataType::AUDIO, 2); } + ChanCount in() const { return ChanCount (DataType::AUDIO, 2); } + ChanCount out() const { return ChanCount (DataType::AUDIO, 2); } - bool clamp_position (double&); - bool clamp_width (double&); + bool clamp_position (double&); + bool clamp_width (double&); - void set_position (double); - void set_width (double); + std::pair position_range () const; + std::pair width_range () const; - double position () const; - double width () const; + void set_position (double); + void set_width (double); + + double position () const; + double width () const; std::set what_can_be_automated() const; static Panner* factory (boost::shared_ptr, boost::shared_ptr); - std::string describe_parameter (Evoral::Parameter); - std::string value_as_string (boost::shared_ptr) const; + std::string describe_parameter (Evoral::Parameter); + std::string value_as_string (boost::shared_ptr) const; + + XMLNode& get_state (); - XMLNode& state (bool full_state); - XMLNode& get_state (void); - int set_state (const XMLNode&, int version); + void update (); - void update (); + void reset (); + void thaw (); protected: float left[2]; @@ -77,12 +81,12 @@ class Panner2in2out : public Panner float right_interp[2]; private: - bool clamp_stereo_pan (double& direction_as_lr_fract, double& width); - - void distribute_one (AudioBuffer& srcbuf, BufferSet& obufs, gain_t gain_coeff, pframes_t nframes, uint32_t which); - void distribute_one_automated (AudioBuffer& srcbuf, BufferSet& obufs, - framepos_t start, framepos_t end, pframes_t nframes, - pan_t** buffers, uint32_t which); + bool clamp_stereo_pan (double& direction_as_lr_fract, double& width); + + void distribute_one (AudioBuffer& srcbuf, BufferSet& obufs, gain_t gain_coeff, pframes_t nframes, uint32_t which); + void distribute_one_automated (AudioBuffer& srcbuf, BufferSet& obufs, + framepos_t start, framepos_t end, pframes_t nframes, + pan_t** buffers, uint32_t which); }; } // namespace