Rename interpretor to interpreter.
[Faustine.git] / interpreter / preprocessor / faust-0.9.47mr3 / architecture / gui / UI.h
diff --git a/interpreter/preprocessor/faust-0.9.47mr3/architecture/gui/UI.h b/interpreter/preprocessor/faust-0.9.47mr3/architecture/gui/UI.h
new file mode 100644 (file)
index 0000000..cd5b11c
--- /dev/null
@@ -0,0 +1,49 @@
+#ifndef FAUST_UI_H
+#define FAUST_UI_H
+
+
+/*******************************************************************************
+ * UI : Faust User Interface
+ * This abstract class contains only the method that the faust compiler can
+ * generate to describe a DSP interface.
+ ******************************************************************************/
+
+class UI
+{
+
+ public:
+
+       UI() {  }
+
+       virtual ~UI() { }
+
+    // -- widget's layouts
+
+    virtual void openFrameBox(const char* label) = 0;
+    virtual void openTabBox(const char* label) = 0;
+    virtual void openHorizontalBox(const char* label) = 0;
+    virtual void openVerticalBox(const char* label) = 0;
+    virtual void closeBox() = 0;
+
+    // -- active widgets
+
+    virtual void addButton(const char* label, float* zone) = 0;
+    virtual void addToggleButton(const char* label, float* zone) = 0;
+    virtual void addCheckButton(const char* label, float* zone) = 0;
+    virtual void addVerticalSlider(const char* label, float* zone, float init, float min, float max, float step) = 0;
+    virtual void addHorizontalSlider(const char* label, float* zone, float init, float min, float max, float step) = 0;
+    virtual void addNumEntry(const char* label, float* zone, float init, float min, float max, float step) = 0;
+
+    // -- passive widgets
+
+    virtual void addNumDisplay(const char* label, float* zone, int precision) = 0;
+    virtual void addTextDisplay(const char* label, float* zone, const char* names[], float min, float max) = 0;
+    virtual void addHorizontalBargraph(const char* label, float* zone, float min, float max) = 0;
+    virtual void addVerticalBargraph(const char* label, float* zone, float min, float max) = 0;
+
+       // -- metadata declarations
+
+    virtual void declare(float* , const char* , const char* ) {}
+};
+
+#endif