#include "ardour/types.h"
#include "ardour/panner.h"
+
namespace ARDOUR {
class Panner1in2out : public Panner
Panner1in2out (boost::shared_ptr<Pannable>);
~Panner1in2out ();
- void set_position (double);
- bool clamp_position (double&);
+ void set_position (double);
+ bool clamp_position (double&);
+ std::pair<double, double> position_range () const;
double position() const;
std::set<Evoral::Parameter> what_can_be_automated() const;
- /* this class just leaves the pan law itself to be defined
- by the update(), do_distribute_automated()
- methods. derived classes also need a factory method
- and a type name. See EqualPowerStereoPanner as an example.
- */
-
- static Panner* factory (boost::shared_ptr<Pannable>, Speakers&);
+ static Panner* factory (boost::shared_ptr<Pannable>, boost::shared_ptr<Speakers>);
std::string describe_parameter (Evoral::Parameter);
+ std::string value_as_string (boost::shared_ptr<AutomationControl>) const;
+
+ XMLNode& get_state ();
- XMLNode& state (bool full_state);
- XMLNode& get_state (void);
- int set_state (const XMLNode&, int version);
+ void reset ();
protected:
float left;