mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-06 23:05:04 +01:00
surfaces & event loops: i really mean no more request buffer factories
This commit is contained in:
parent
b0586763ba
commit
f718279949
41 changed files with 1 additions and 262 deletions
|
|
@ -62,17 +62,6 @@ MidiControlUI::~MidiControlUI ()
|
||||||
_instance = 0;
|
_instance = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void*
|
|
||||||
MidiControlUI::request_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
/* AbstractUI<T>::request_buffer_factory() is a template method only
|
|
||||||
instantiated in this source module. To provide something visible for
|
|
||||||
use when registering the factory, we have this static method that is
|
|
||||||
template-free.
|
|
||||||
*/
|
|
||||||
return request_buffer_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
MidiControlUI::do_request (MidiUIRequest* req)
|
MidiControlUI::do_request (MidiUIRequest* req)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -180,15 +180,6 @@ public:
|
||||||
bool (*probe) (ControlProtocolDescriptor*);
|
bool (*probe) (ControlProtocolDescriptor*);
|
||||||
ControlProtocol* (*initialize) (ControlProtocolDescriptor*, Session*);
|
ControlProtocol* (*initialize) (ControlProtocolDescriptor*, Session*);
|
||||||
void (*destroy) (ControlProtocolDescriptor*, ControlProtocol*);
|
void (*destroy) (ControlProtocolDescriptor*, ControlProtocol*);
|
||||||
/* this is required if the control protocol connects to signals
|
|
||||||
* from libardour. they all do. It should allocate a
|
|
||||||
* type-specific request buffer for the calling thread, and
|
|
||||||
* store it in a thread-local location that will be used to
|
|
||||||
* find it when sending the event loop a message
|
|
||||||
* (e.g. call_slot()). It should also return the allocated
|
|
||||||
* buffer as a void*.
|
|
||||||
*/
|
|
||||||
void* (*request_buffer_factory) (uint32_t);
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -437,14 +437,3 @@ MIDISurface::bundles ()
|
||||||
return b;
|
return b;
|
||||||
}
|
}
|
||||||
|
|
||||||
void*
|
|
||||||
MIDISurface::request_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
/* AbstractUI<T>::request_buffer_factory() is a template method only
|
|
||||||
instantiated in this source module. To provide something visible for
|
|
||||||
use in the interface/descriptor, we have this static method that is
|
|
||||||
template-free.
|
|
||||||
*/
|
|
||||||
return request_buffer_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -48,8 +48,6 @@ class MIDISurface : public ARDOUR::ControlProtocol
|
||||||
MIDISurface (ARDOUR::Session&, std::string const & name, std::string const & port_name_prefix, bool use_pad_filter);
|
MIDISurface (ARDOUR::Session&, std::string const & name, std::string const & port_name_prefix, bool use_pad_filter);
|
||||||
~MIDISurface ();
|
~MIDISurface ();
|
||||||
|
|
||||||
static void* request_factory (uint32_t num_requests);
|
|
||||||
|
|
||||||
std::shared_ptr<ARDOUR::Port> input_port();
|
std::shared_ptr<ARDOUR::Port> input_port();
|
||||||
std::shared_ptr<ARDOUR::Port> output_port();
|
std::shared_ptr<ARDOUR::Port> output_port();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -513,9 +513,3 @@ AbstractUI<RequestObject>::call_slot (InvalidationRecord* invalidation, const bo
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename RequestObject> void*
|
|
||||||
AbstractUI<RequestObject>::request_buffer_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
RequestBuffer* mcr = new RequestBuffer (num_requests); // XXX leaks
|
|
||||||
return mcr;
|
|
||||||
}
|
|
||||||
|
|
|
||||||
|
|
@ -65,8 +65,6 @@ public:
|
||||||
|
|
||||||
Glib::Threads::RWLock request_buffer_map_lock;
|
Glib::Threads::RWLock request_buffer_map_lock;
|
||||||
|
|
||||||
static void* request_buffer_factory (uint32_t num_requests);
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
struct RequestBuffer : public PBD::RingBufferNPT<RequestObject> {
|
struct RequestBuffer : public PBD::RingBufferNPT<RequestObject> {
|
||||||
bool dead;
|
bool dead;
|
||||||
|
|
|
||||||
|
|
@ -202,17 +202,6 @@ CC121::~CC121 ()
|
||||||
BaseUI::quit ();
|
BaseUI::quit ();
|
||||||
}
|
}
|
||||||
|
|
||||||
void*
|
|
||||||
CC121::request_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
/* AbstractUI<T>::request_buffer_factory() is a template method only
|
|
||||||
instantiated in this source module. To provide something visible for
|
|
||||||
use in the interface/descriptor, we have this static method that is
|
|
||||||
template-free.
|
|
||||||
*/
|
|
||||||
return request_buffer_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
CC121::start_midi_handling ()
|
CC121::start_midi_handling ()
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -87,7 +87,6 @@ class CC121 : public ARDOUR::ControlProtocol, public AbstractUI<CC121Request> {
|
||||||
there's no way to know if the device exists or not.
|
there's no way to know if the device exists or not.
|
||||||
*/
|
*/
|
||||||
static bool probe() { return true; }
|
static bool probe() { return true; }
|
||||||
static void* request_factory (uint32_t);
|
|
||||||
|
|
||||||
XMLNode& get_state () const;
|
XMLNode& get_state () const;
|
||||||
int set_state (const XMLNode&, int version);
|
int set_state (const XMLNode&, int version);
|
||||||
|
|
|
||||||
|
|
@ -56,12 +56,6 @@ probe_cc121_midi_protocol (ControlProtocolDescriptor* /*descriptor*/)
|
||||||
return CC121::probe ();
|
return CC121::probe ();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void*
|
|
||||||
cc121_request_buffer_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
return CC121::request_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
static ControlProtocolDescriptor cc121_midi_descriptor = {
|
static ControlProtocolDescriptor cc121_midi_descriptor = {
|
||||||
/*name : */ "Steinberg CC121",
|
/*name : */ "Steinberg CC121",
|
||||||
/*id : */ "uri://ardour.org/surfaces/cc121:0",
|
/*id : */ "uri://ardour.org/surfaces/cc121:0",
|
||||||
|
|
@ -72,7 +66,6 @@ static ControlProtocolDescriptor cc121_midi_descriptor = {
|
||||||
/*probe : */ probe_cc121_midi_protocol,
|
/*probe : */ probe_cc121_midi_protocol,
|
||||||
/*initialize : */ new_cc121_midi_protocol,
|
/*initialize : */ new_cc121_midi_protocol,
|
||||||
/*destroy : */ delete_cc121_midi_protocol,
|
/*destroy : */ delete_cc121_midi_protocol,
|
||||||
/*request_buffer_factory */ cc121_request_buffer_factory
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &cc121_midi_descriptor; }
|
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &cc121_midi_descriptor; }
|
||||||
|
|
|
||||||
|
|
@ -97,17 +97,6 @@ ContourDesignControlProtocol::probe ()
|
||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
void*
|
|
||||||
ContourDesignControlProtocol::request_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
/* AbstractUI<T>::request_buffer_factory() is a template method only
|
|
||||||
* instantiated in this source module. To provide something visible for
|
|
||||||
* use in the interface/descriptor, we have this static method that is
|
|
||||||
* template-free.
|
|
||||||
*/
|
|
||||||
return request_buffer_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
int
|
||||||
ContourDesignControlProtocol::set_active (bool yn)
|
ContourDesignControlProtocol::set_active (bool yn)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -85,7 +85,6 @@ public:
|
||||||
DeviceType device_type() const { return _device_type; }
|
DeviceType device_type() const { return _device_type; }
|
||||||
|
|
||||||
static bool probe ();
|
static bool probe ();
|
||||||
static void* request_factory (uint32_t);
|
|
||||||
|
|
||||||
int set_active (bool yn);
|
int set_active (bool yn);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -49,12 +49,6 @@ probe_contourdesign_protocol (ControlProtocolDescriptor*)
|
||||||
return ContourDesignControlProtocol::probe ();
|
return ContourDesignControlProtocol::probe ();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void*
|
|
||||||
contourdesign_request_buffer_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
return ContourDesignControlProtocol::request_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
static ControlProtocolDescriptor contourdesign_descriptor = {
|
static ControlProtocolDescriptor contourdesign_descriptor = {
|
||||||
/* name : */ "ContourDesign",
|
/* name : */ "ContourDesign",
|
||||||
/* id : */ "uri://ardour.org/surfaces/contourdesign:0",
|
/* id : */ "uri://ardour.org/surfaces/contourdesign:0",
|
||||||
|
|
@ -65,7 +59,6 @@ static ControlProtocolDescriptor contourdesign_descriptor = {
|
||||||
/* probe : */ probe_contourdesign_protocol,
|
/* probe : */ probe_contourdesign_protocol,
|
||||||
/* initialize : */ new_contourdesign_protocol,
|
/* initialize : */ new_contourdesign_protocol,
|
||||||
/* destroy : */ delete_contourdesign_protocol,
|
/* destroy : */ delete_contourdesign_protocol,
|
||||||
/* request_buffer_factory : */ contourdesign_request_buffer_factory
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &contourdesign_descriptor; }
|
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &contourdesign_descriptor; }
|
||||||
|
|
|
||||||
|
|
@ -56,13 +56,6 @@ probe_faderport_midi_protocol (ControlProtocolDescriptor* /*descriptor*/)
|
||||||
return FaderPort::probe ();
|
return FaderPort::probe ();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void*
|
|
||||||
faderport_request_buffer_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
return MIDISurface::request_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
static ControlProtocolDescriptor faderport_midi_descriptor = {
|
static ControlProtocolDescriptor faderport_midi_descriptor = {
|
||||||
/*name : */ "PreSonus FaderPort",
|
/*name : */ "PreSonus FaderPort",
|
||||||
/*id : */ "uri://ardour.org/surfaces/faderport:0",
|
/*id : */ "uri://ardour.org/surfaces/faderport:0",
|
||||||
|
|
@ -73,7 +66,6 @@ static ControlProtocolDescriptor faderport_midi_descriptor = {
|
||||||
/*probe : */ probe_faderport_midi_protocol,
|
/*probe : */ probe_faderport_midi_protocol,
|
||||||
/*initialize : */ new_faderport_midi_protocol,
|
/*initialize : */ new_faderport_midi_protocol,
|
||||||
/*destroy : */ delete_faderport_midi_protocol,
|
/*destroy : */ delete_faderport_midi_protocol,
|
||||||
/*request_buffer_factory */ faderport_request_buffer_factory
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &faderport_midi_descriptor; }
|
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &faderport_midi_descriptor; }
|
||||||
|
|
|
||||||
|
|
@ -55,12 +55,6 @@ probe_faderport16_midi_protocol (ControlProtocolDescriptor* /*descriptor*/)
|
||||||
return FaderPort8::probe ();
|
return FaderPort8::probe ();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void*
|
|
||||||
faderport16_request_buffer_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
return FaderPort8::request_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
static ControlProtocolDescriptor faderport16_midi_descriptor = {
|
static ControlProtocolDescriptor faderport16_midi_descriptor = {
|
||||||
/*name : */ "PreSonus FaderPort16",
|
/*name : */ "PreSonus FaderPort16",
|
||||||
/*id : */ "uri://ardour.org/surfaces/faderport16:0",
|
/*id : */ "uri://ardour.org/surfaces/faderport16:0",
|
||||||
|
|
@ -71,7 +65,6 @@ static ControlProtocolDescriptor faderport16_midi_descriptor = {
|
||||||
/*probe : */ probe_faderport16_midi_protocol,
|
/*probe : */ probe_faderport16_midi_protocol,
|
||||||
/*initialize : */ new_faderport16_midi_protocol,
|
/*initialize : */ new_faderport16_midi_protocol,
|
||||||
/*destroy : */ delete_faderport16_midi_protocol,
|
/*destroy : */ delete_faderport16_midi_protocol,
|
||||||
/*request_buffer_factory */ faderport16_request_buffer_factory
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern "C" ARDOURSURFACE_API
|
extern "C" ARDOURSURFACE_API
|
||||||
|
|
|
||||||
|
|
@ -55,12 +55,6 @@ probe_faderport2_midi_protocol (ControlProtocolDescriptor* /*descriptor*/)
|
||||||
return FaderPort8::probe ();
|
return FaderPort8::probe ();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void*
|
|
||||||
faderport2_request_buffer_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
return FaderPort8::request_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
static ControlProtocolDescriptor faderport2_midi_descriptor = {
|
static ControlProtocolDescriptor faderport2_midi_descriptor = {
|
||||||
/*name : */ "PreSonus FaderPort2",
|
/*name : */ "PreSonus FaderPort2",
|
||||||
/*id : */ "uri://ardour.org/surfaces/faderport2:0",
|
/*id : */ "uri://ardour.org/surfaces/faderport2:0",
|
||||||
|
|
@ -71,7 +65,6 @@ static ControlProtocolDescriptor faderport2_midi_descriptor = {
|
||||||
/*probe : */ probe_faderport2_midi_protocol,
|
/*probe : */ probe_faderport2_midi_protocol,
|
||||||
/*initialize : */ new_faderport2_midi_protocol,
|
/*initialize : */ new_faderport2_midi_protocol,
|
||||||
/*destroy : */ delete_faderport2_midi_protocol,
|
/*destroy : */ delete_faderport2_midi_protocol,
|
||||||
/*request_buffer_factory */ faderport2_request_buffer_factory
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern "C" ARDOURSURFACE_API
|
extern "C" ARDOURSURFACE_API
|
||||||
|
|
|
||||||
|
|
@ -215,17 +215,6 @@ FaderPort8::~FaderPort8 ()
|
||||||
* Event Loop
|
* Event Loop
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void*
|
|
||||||
FaderPort8::request_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
/* AbstractUI<T>::request_buffer_factory() is a template method only
|
|
||||||
* instantiated in this source module. To provide something visible for
|
|
||||||
* use in the interface/descriptor, we have this static method that is
|
|
||||||
* template-free.
|
|
||||||
*/
|
|
||||||
return request_buffer_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
FaderPort8::do_request (FaderPort8Request* req)
|
FaderPort8::do_request (FaderPort8Request* req)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -73,7 +73,6 @@ public:
|
||||||
* there's no way to know if the device exists or not.
|
* there's no way to know if the device exists or not.
|
||||||
*/
|
*/
|
||||||
static bool probe() { return true; }
|
static bool probe() { return true; }
|
||||||
static void* request_factory (uint32_t);
|
|
||||||
|
|
||||||
XMLNode& get_state () const;
|
XMLNode& get_state () const;
|
||||||
int set_state (const XMLNode&, int version);
|
int set_state (const XMLNode&, int version);
|
||||||
|
|
|
||||||
|
|
@ -55,12 +55,6 @@ probe_faderport8_midi_protocol (ControlProtocolDescriptor* /*descriptor*/)
|
||||||
return FaderPort8::probe ();
|
return FaderPort8::probe ();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void*
|
|
||||||
faderport8_request_buffer_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
return FaderPort8::request_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
static ControlProtocolDescriptor faderport8_midi_descriptor = {
|
static ControlProtocolDescriptor faderport8_midi_descriptor = {
|
||||||
/*name : */ "PreSonus FaderPort8",
|
/*name : */ "PreSonus FaderPort8",
|
||||||
/*id : */ "uri://ardour.org/surfaces/faderport8:0",
|
/*id : */ "uri://ardour.org/surfaces/faderport8:0",
|
||||||
|
|
@ -71,7 +65,6 @@ static ControlProtocolDescriptor faderport8_midi_descriptor = {
|
||||||
/*probe : */ probe_faderport8_midi_protocol,
|
/*probe : */ probe_faderport8_midi_protocol,
|
||||||
/*initialize : */ new_faderport8_midi_protocol,
|
/*initialize : */ new_faderport8_midi_protocol,
|
||||||
/*destroy : */ delete_faderport8_midi_protocol,
|
/*destroy : */ delete_faderport8_midi_protocol,
|
||||||
/*request_buffer_factory */ faderport8_request_buffer_factory
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern "C" ARDOURSURFACE_API
|
extern "C" ARDOURSURFACE_API
|
||||||
|
|
|
||||||
|
|
@ -66,10 +66,6 @@ static ControlProtocolDescriptor generic_midi_descriptor = {
|
||||||
/*probe : */ probe_generic_midi_protocol,
|
/*probe : */ probe_generic_midi_protocol,
|
||||||
/*initialize : */ new_generic_midi_protocol,
|
/*initialize : */ new_generic_midi_protocol,
|
||||||
/*destroy : */ delete_generic_midi_protocol,
|
/*destroy : */ delete_generic_midi_protocol,
|
||||||
/*request_buffer_factory : */ 0 /* no buffer factory because this runs
|
|
||||||
* in the midiUI event loop (which has
|
|
||||||
* its own request buffer factory.
|
|
||||||
*/
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &generic_midi_descriptor; }
|
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &generic_midi_descriptor; }
|
||||||
|
|
|
||||||
|
|
@ -74,12 +74,6 @@ probe_launch_control_xl (ControlProtocolDescriptor*)
|
||||||
return LaunchControlXL::probe();
|
return LaunchControlXL::probe();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void*
|
|
||||||
lcxl_request_buffer_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
return LaunchControlXL::request_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
static ControlProtocolDescriptor launch_control_xl_descriptor = {
|
static ControlProtocolDescriptor launch_control_xl_descriptor = {
|
||||||
/*name : */ "Novation Launch Control XL",
|
/*name : */ "Novation Launch Control XL",
|
||||||
/*id : */ "uri://ardour.org/surfaces/launch_control_xl:0",
|
/*id : */ "uri://ardour.org/surfaces/launch_control_xl:0",
|
||||||
|
|
@ -94,7 +88,6 @@ static ControlProtocolDescriptor launch_control_xl_descriptor = {
|
||||||
/*probe : */ probe_launch_control_xl,
|
/*probe : */ probe_launch_control_xl,
|
||||||
/*initialize : */ new_launch_control_xl,
|
/*initialize : */ new_launch_control_xl,
|
||||||
/*destroy : */ delete_launch_control_xl,
|
/*destroy : */ delete_launch_control_xl,
|
||||||
/*request_buffer_factory */ lcxl_request_buffer_factory
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &launch_control_xl_descriptor; }
|
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &launch_control_xl_descriptor; }
|
||||||
|
|
|
||||||
|
|
@ -427,17 +427,6 @@ LaunchControlXL::probe ()
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void*
|
|
||||||
LaunchControlXL::request_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
/* AbstractUI<T>::request_buffer_factory() is a template method only
|
|
||||||
instantiated in this source module. To provide something visible for
|
|
||||||
use in the interface/descriptor, we have this static method that is
|
|
||||||
template-free.
|
|
||||||
*/
|
|
||||||
return request_buffer_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
LaunchControlXL::do_request (LaunchControlRequest * req)
|
LaunchControlXL::do_request (LaunchControlRequest * req)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -358,7 +358,6 @@ public:
|
||||||
|
|
||||||
|
|
||||||
static bool probe();
|
static bool probe();
|
||||||
static void *request_factory(uint32_t);
|
|
||||||
|
|
||||||
std::list<std::shared_ptr<ARDOUR::Bundle> > bundles();
|
std::list<std::shared_ptr<ARDOUR::Bundle> > bundles();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -77,12 +77,6 @@ probe_mackie_protocol (ControlProtocolDescriptor*)
|
||||||
return MackieControlProtocol::probe();
|
return MackieControlProtocol::probe();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void*
|
|
||||||
mackie_request_buffer_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
return MackieControlProtocol::request_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Field names commented out by JE - 06-01-2010
|
// Field names commented out by JE - 06-01-2010
|
||||||
static ControlProtocolDescriptor mackie_descriptor = {
|
static ControlProtocolDescriptor mackie_descriptor = {
|
||||||
/*name : */ "Mackie",
|
/*name : */ "Mackie",
|
||||||
|
|
@ -98,7 +92,6 @@ static ControlProtocolDescriptor mackie_descriptor = {
|
||||||
/*probe : */ probe_mackie_protocol,
|
/*probe : */ probe_mackie_protocol,
|
||||||
/*initialize : */ new_mackie_protocol,
|
/*initialize : */ new_mackie_protocol,
|
||||||
/*destroy : */ delete_mackie_protocol,
|
/*destroy : */ delete_mackie_protocol,
|
||||||
/*request_buffer_factory */ mackie_request_buffer_factory
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &mackie_descriptor; }
|
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &mackie_descriptor; }
|
||||||
|
|
|
||||||
|
|
@ -2505,17 +2505,6 @@ MackieControlProtocol::global_index_locked (Strip& strip)
|
||||||
return global;
|
return global;
|
||||||
}
|
}
|
||||||
|
|
||||||
void*
|
|
||||||
MackieControlProtocol::request_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
/* AbstractUI<T>::request_buffer_factory() is a template method only
|
|
||||||
instantiated in this source module. To provide something visible for
|
|
||||||
use in the interface/descriptor, we have this static method that is
|
|
||||||
template-free.
|
|
||||||
*/
|
|
||||||
return request_buffer_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
MackieControlProtocol::set_automation_state (AutoState as)
|
MackieControlProtocol::set_automation_state (AutoState as)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -161,7 +161,6 @@ class MackieControlProtocol
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static bool probe();
|
static bool probe();
|
||||||
static void* request_factory (uint32_t);
|
|
||||||
|
|
||||||
mutable Glib::Threads::Mutex surfaces_lock;
|
mutable Glib::Threads::Mutex surfaces_lock;
|
||||||
typedef std::list<std::shared_ptr<Mackie::Surface> > Surfaces;
|
typedef std::list<std::shared_ptr<Mackie::Surface> > Surfaces;
|
||||||
|
|
|
||||||
|
|
@ -57,12 +57,6 @@ probe_maschine2 (ControlProtocolDescriptor*)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void*
|
|
||||||
maschine2_request_buffer_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
return Maschine2::request_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
static ControlProtocolDescriptor maschine2_descriptor = {
|
static ControlProtocolDescriptor maschine2_descriptor = {
|
||||||
/*name : */ "NI Maschine2",
|
/*name : */ "NI Maschine2",
|
||||||
/*id : */ "uri://ardour.org/surfaces/maschine2:0",
|
/*id : */ "uri://ardour.org/surfaces/maschine2:0",
|
||||||
|
|
@ -73,7 +67,6 @@ static ControlProtocolDescriptor maschine2_descriptor = {
|
||||||
/*probe : */ probe_maschine2,
|
/*probe : */ probe_maschine2,
|
||||||
/*initialize : */ new_maschine2,
|
/*initialize : */ new_maschine2,
|
||||||
/*destroy : */ delete_maschine2,
|
/*destroy : */ delete_maschine2,
|
||||||
/*request_buffer_factory */ maschine2_request_buffer_factory
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &maschine2_descriptor; }
|
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &maschine2_descriptor; }
|
||||||
|
|
|
||||||
|
|
@ -125,12 +125,6 @@ Maschine2::~Maschine2 ()
|
||||||
hid_exit ();
|
hid_exit ();
|
||||||
}
|
}
|
||||||
|
|
||||||
void*
|
|
||||||
Maschine2::request_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
return request_buffer_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
Maschine2::do_request (Maschine2Request* req)
|
Maschine2::do_request (Maschine2Request* req)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -64,7 +64,6 @@ class Maschine2: public ARDOUR::ControlProtocol, public AbstractUI<Maschine2Requ
|
||||||
Maschine2 (ARDOUR::Session&);
|
Maschine2 (ARDOUR::Session&);
|
||||||
~Maschine2 ();
|
~Maschine2 ();
|
||||||
|
|
||||||
static void* request_factory (uint32_t);
|
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
bool has_editor () const { return false; }
|
bool has_editor () const { return false; }
|
||||||
|
|
|
||||||
|
|
@ -46,12 +46,6 @@ probe_osc_protocol (ControlProtocolDescriptor* /*descriptor*/)
|
||||||
return true; // we can always do OSC
|
return true; // we can always do OSC
|
||||||
}
|
}
|
||||||
|
|
||||||
static void*
|
|
||||||
osc_request_buffer_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
return OSC::request_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
static ControlProtocolDescriptor osc_descriptor = {
|
static ControlProtocolDescriptor osc_descriptor = {
|
||||||
/*name : */ "Open Sound Control (OSC)",
|
/*name : */ "Open Sound Control (OSC)",
|
||||||
/*id : */ "uri://ardour.org/surfaces/osc:0",
|
/*id : */ "uri://ardour.org/surfaces/osc:0",
|
||||||
|
|
@ -62,7 +56,6 @@ static ControlProtocolDescriptor osc_descriptor = {
|
||||||
/*probe : */ probe_osc_protocol,
|
/*probe : */ probe_osc_protocol,
|
||||||
/*initialize : */ new_osc_protocol,
|
/*initialize : */ new_osc_protocol,
|
||||||
/*destroy : */ delete_osc_protocol,
|
/*destroy : */ delete_osc_protocol,
|
||||||
/*request_buffer_factory */ osc_request_buffer_factory
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &osc_descriptor; }
|
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &osc_descriptor; }
|
||||||
|
|
|
||||||
|
|
@ -141,17 +141,6 @@ OSC::~OSC()
|
||||||
_instance = 0;
|
_instance = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void*
|
|
||||||
OSC::request_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
/* AbstractUI<T>::request_buffer_factory() is a template method only
|
|
||||||
instantiated in this source module. To provide something visible for
|
|
||||||
use in the interface/descriptor, we have this static method that is
|
|
||||||
template-free.
|
|
||||||
*/
|
|
||||||
return request_buffer_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
OSC::do_request (OSCUIRequest* req)
|
OSC::do_request (OSCUIRequest* req)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -108,8 +108,6 @@ class OSC : public ARDOUR::ControlProtocol, public AbstractUI<OSCUIRequest>
|
||||||
int start ();
|
int start ();
|
||||||
int stop ();
|
int stop ();
|
||||||
|
|
||||||
static void* request_factory (uint32_t);
|
|
||||||
|
|
||||||
enum OSCDebugMode {
|
enum OSCDebugMode {
|
||||||
Off,
|
Off,
|
||||||
Unhandled,
|
Unhandled,
|
||||||
|
|
|
||||||
|
|
@ -72,12 +72,6 @@ probe_push2 (ControlProtocolDescriptor*)
|
||||||
return Push2::probe();
|
return Push2::probe();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void*
|
|
||||||
push2_request_buffer_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
return MIDISurface::request_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
static ControlProtocolDescriptor push2_descriptor = {
|
static ControlProtocolDescriptor push2_descriptor = {
|
||||||
/*name : */ "Ableton Push 2",
|
/*name : */ "Ableton Push 2",
|
||||||
/*id : */ "uri://ardour.org/surfaces/push2:0",
|
/*id : */ "uri://ardour.org/surfaces/push2:0",
|
||||||
|
|
@ -92,7 +86,6 @@ static ControlProtocolDescriptor push2_descriptor = {
|
||||||
/*probe : */ probe_push2,
|
/*probe : */ probe_push2,
|
||||||
/*initialize : */ new_push2,
|
/*initialize : */ new_push2,
|
||||||
/*destroy : */ delete_push2,
|
/*destroy : */ delete_push2,
|
||||||
/*request_buffer_factory */ push2_request_buffer_factory
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &push2_descriptor; }
|
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &push2_descriptor; }
|
||||||
|
|
|
||||||
|
|
@ -74,12 +74,6 @@ probe_us2400_protocol (ControlProtocolDescriptor*)
|
||||||
return US2400Protocol::probe();
|
return US2400Protocol::probe();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void*
|
|
||||||
us2400_request_buffer_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
return US2400Protocol::request_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Field names commented out by JE - 06-01-2010
|
// Field names commented out by JE - 06-01-2010
|
||||||
static ControlProtocolDescriptor us2400_descriptor = {
|
static ControlProtocolDescriptor us2400_descriptor = {
|
||||||
/*name : */ "Tascam US-2400",
|
/*name : */ "Tascam US-2400",
|
||||||
|
|
@ -95,7 +89,6 @@ static ControlProtocolDescriptor us2400_descriptor = {
|
||||||
/*probe : */ probe_us2400_protocol,
|
/*probe : */ probe_us2400_protocol,
|
||||||
/*initialize : */ new_us2400_protocol,
|
/*initialize : */ new_us2400_protocol,
|
||||||
/*destroy : */ delete_us2400_protocol,
|
/*destroy : */ delete_us2400_protocol,
|
||||||
/*request_buffer_factory */ us2400_request_buffer_factory
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &us2400_descriptor; }
|
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &us2400_descriptor; }
|
||||||
|
|
|
||||||
|
|
@ -1962,17 +1962,6 @@ US2400Protocol::global_index_locked (Strip& strip)
|
||||||
return global;
|
return global;
|
||||||
}
|
}
|
||||||
|
|
||||||
void*
|
|
||||||
US2400Protocol::request_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
/* AbstractUI<T>::request_buffer_factory() is a template method only
|
|
||||||
instantiated in this source module. To provide something visible for
|
|
||||||
use in the interface/descriptor, we have this static method that is
|
|
||||||
template-free.
|
|
||||||
*/
|
|
||||||
return request_buffer_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
US2400Protocol::set_automation_state (AutoState as)
|
US2400Protocol::set_automation_state (AutoState as)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -139,7 +139,6 @@ class US2400Protocol
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static bool probe();
|
static bool probe();
|
||||||
static void* request_factory (uint32_t);
|
|
||||||
|
|
||||||
mutable Glib::Threads::Mutex surfaces_lock;
|
mutable Glib::Threads::Mutex surfaces_lock;
|
||||||
typedef std::list<std::shared_ptr<US2400::Surface> > Surfaces;
|
typedef std::list<std::shared_ptr<US2400::Surface> > Surfaces;
|
||||||
|
|
|
||||||
|
|
@ -55,17 +55,6 @@ ArdourWebsockets::~ArdourWebsockets ()
|
||||||
stop ();
|
stop ();
|
||||||
}
|
}
|
||||||
|
|
||||||
void*
|
|
||||||
ArdourWebsockets::request_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
/* AbstractUI<T>::request_buffer_factory() is a template method only
|
|
||||||
instantiated in this source module. To provide something visible for
|
|
||||||
use in the interface/descriptor, we have this static method that is
|
|
||||||
template-free.
|
|
||||||
*/
|
|
||||||
return request_buffer_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
int
|
||||||
ArdourWebsockets::set_active (bool yn)
|
ArdourWebsockets::set_active (bool yn)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -57,8 +57,6 @@ public:
|
||||||
ArdourWebsockets (ARDOUR::Session&);
|
ArdourWebsockets (ARDOUR::Session&);
|
||||||
virtual ~ArdourWebsockets ();
|
virtual ~ArdourWebsockets ();
|
||||||
|
|
||||||
static void* request_factory (uint32_t);
|
|
||||||
|
|
||||||
int set_active (bool);
|
int set_active (bool);
|
||||||
|
|
||||||
ARDOUR::Session& ardour_session ()
|
ARDOUR::Session& ardour_session ()
|
||||||
|
|
|
||||||
|
|
@ -49,12 +49,6 @@ probe_ardour_websockets_protocol (ControlProtocolDescriptor* /*descriptor*/)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void*
|
|
||||||
ardour_websockets_request_buffer_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
return ArdourWebsockets::request_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
static ControlProtocolDescriptor ardour_websockets_descriptor = {
|
static ControlProtocolDescriptor ardour_websockets_descriptor = {
|
||||||
/*name : */ surface_name,
|
/*name : */ surface_name,
|
||||||
/*id : */ surface_id,
|
/*id : */ surface_id,
|
||||||
|
|
@ -65,7 +59,6 @@ static ControlProtocolDescriptor ardour_websockets_descriptor = {
|
||||||
/*probe : */ probe_ardour_websockets_protocol,
|
/*probe : */ probe_ardour_websockets_protocol,
|
||||||
/*initialize : */ new_ardour_websockets_protocol,
|
/*initialize : */ new_ardour_websockets_protocol,
|
||||||
/*destroy : */ delete_ardour_websockets_protocol,
|
/*destroy : */ delete_ardour_websockets_protocol,
|
||||||
/*request_buffer_factory */ ardour_websockets_request_buffer_factory
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor*
|
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor*
|
||||||
|
|
|
||||||
|
|
@ -46,12 +46,6 @@ probe_wiimote_protocol (ControlProtocolDescriptor*)
|
||||||
{
|
{
|
||||||
return WiimoteControlProtocol::probe ();
|
return WiimoteControlProtocol::probe ();
|
||||||
}
|
}
|
||||||
static void*
|
|
||||||
wiimote_request_buffer_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
return WiimoteControlProtocol::request_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
static ControlProtocolDescriptor wiimote_descriptor = {
|
static ControlProtocolDescriptor wiimote_descriptor = {
|
||||||
name : "Wiimote",
|
name : "Wiimote",
|
||||||
|
|
@ -63,7 +57,6 @@ static ControlProtocolDescriptor wiimote_descriptor = {
|
||||||
probe : probe_wiimote_protocol,
|
probe : probe_wiimote_protocol,
|
||||||
initialize : new_wiimote_protocol,
|
initialize : new_wiimote_protocol,
|
||||||
destroy : delete_wiimote_protocol,
|
destroy : delete_wiimote_protocol,
|
||||||
request_buffer_factory : wiimote_request_buffer_factory
|
|
||||||
};
|
};
|
||||||
|
|
||||||
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &wiimote_descriptor; }
|
extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &wiimote_descriptor; }
|
||||||
|
|
|
||||||
|
|
@ -455,14 +455,3 @@ wiimote_control_protocol_mesg_callback (cwiid_wiimote_t *wiimote, int mesg_count
|
||||||
DEBUG_TRACE (DEBUG::WiimoteControl, "WiimoteControlProtocol::mesg_callback done\n");
|
DEBUG_TRACE (DEBUG::WiimoteControl, "WiimoteControlProtocol::mesg_callback done\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void*
|
|
||||||
WiimoteControlProtocol::request_factory (uint32_t num_requests)
|
|
||||||
{
|
|
||||||
/* AbstractUI<T>::request_buffer_factory() is a template method only
|
|
||||||
instantiated in this source module. To provide something visible for
|
|
||||||
use in the interface/descriptor, we have this static method that is
|
|
||||||
template-free.
|
|
||||||
*/
|
|
||||||
return request_buffer_factory (num_requests);
|
|
||||||
}
|
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,6 @@ public:
|
||||||
virtual ~WiimoteControlProtocol ();
|
virtual ~WiimoteControlProtocol ();
|
||||||
|
|
||||||
static bool probe ();
|
static bool probe ();
|
||||||
static void* request_factory (uint32_t);
|
|
||||||
|
|
||||||
int set_active (bool yn);
|
int set_active (bool yn);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue