summaryrefslogtreecommitdiff
path: root/rotord/src/nodes_UI.h
blob: 67ad67f8c3f4bc9a80dc636a42bcce642ca31f79 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#ifndef ROTOR_NODES_UI
#define ROTOR_NODES_UI

#include "rotor.h"

namespace Rotor {
	class Number: public Signal_node {
		public:
			Number(){
				title="Number";
				description="Outputs a number set by a text entry box as a constant signal";
				create_parameter("value","number","Number to output","Number",0.0);
				create_parameter("min","number","Minimum number","Minimum",0.0);
				create_parameter("max","number","Maximum number","Maximum",0.0);
				create_parameter("step","number","Step size","Step",0.0);
				UItype="text";
				NODEID="91f65d26-626b-11e3-87dc-74d02b29f6a6";
			};
			Number(map<string,string> &settings): Number() {
				base_settings(settings);
			};
			Number* clone(map<string,string> &_settings) { return new Number(_settings);};
			const double output(const Time_spec &time) {
				return parameters["value"]->value;
			}
	};
	class Dial: public Number {
		public:
			Dial(){
				title="Dial";
				description="Outputs a number set by a dial as a constant signal";
				create_attribute("mode","Dial mode","Mode","limited",{"limited","continuous"});
				UItype="dial";
				NODEID="d9837a5a-61af-11e3-9889-74d02b29f6a6";
			};
			Dial(map<string,string> &settings): Dial() {
				base_settings(settings);
			};
			Dial* clone(map<string,string> &_settings) { return new Dial(_settings);};
	};
	class Slider: public Number {
		public:
			Slider(){
				title="Slider";
				description="Outputs a number set by a slider as a constant signal";
				UItype="slider";
				NODEID="6505064e-626d-11e3-a603-74d02b29f6a6";
			};
			Slider(map<string,string> &settings): Slider() {
				base_settings(settings);
			};
			Slider* clone(map<string,string> &_settings) { return new Slider(_settings);};
	};
}

#endif