#pragma once #include "controllers/controller.h" /// Base class handling discovery and enumeration of DJ controllers. /// /// This class handles discovery and enumeration of DJ controllers and /// must be inherited by a class that implements it on some API. class ControllerEnumerator : public QObject { Q_OBJECT public: ControllerEnumerator(); // In this function, the inheriting class must delete the Controllers it // creates virtual ~ControllerEnumerator(); virtual QList queryDevices() = 0; // Sub-classes return true here if their devices must be polled to get data // from the controller. virtual bool needPolling() { return false; } };