1 /* B.Shapr
2  * Beat / envelope shaper LV2 plugin
3  *
4  * Copyright (C) 2019 by Sven Jähnichen
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 3, or (at your option)
9  * any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software Foundation,
18  * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19  */
20 
21 #ifndef PORTS_H_
22 #define PORTS_H_
23 
24 typedef enum
25 {
26 	CONTROL		= 0,
27 	NOTIFY		= 1,
28 	AUDIO_IN_1	= 2,
29 	AUDIO_IN_2	= 3,
30 	AUDIO_OUT_1	= 4,
31 	AUDIO_OUT_2	= 5,
32 
33 #ifdef SUPPORTS_CV
34 	CV_OUT		= 6,
35 	CONTROLLERS	= 10,
36 #else
37 	CONTROLLERS	= 6,
38 #endif
39 
40 	BYPASS		= 0,
41 	DRY_WET		= 1,
42 	MIDI_CONTROL	= 2,
43 	MIDI_KEYS	= 3,
44 	MIDI_THRU	= 4,
45 	BASE		= 5,
46 	BASE_VALUE	= 6,
47 	ACTIVE_SHAPE	= 7,
48 
49 	SHAPERS		= 8,
50 	SH_INPUT	= 0,
51 	SH_INPUT_AMP	= 1,
52 	SH_TARGET	= 2,
53 	SH_DRY_WET	= 3,
54 	SH_OUTPUT	= 4,
55 	SH_OUTPUT_AMP	= 5,
56 	SH_SMOOTHING	= 6,
57 	SH_OPTION	= 7,
58 	SH_SIZE		= 15,
59 
60 	NR_CONTROLLERS	= 68
61 } BShaprPortIndex;
62 
63 typedef enum
64 {
65 	SECONDS		= 0,
66 	BEATS		= 1,
67 	BARS		= 2
68 } BShaprBaseIndex;
69 
70 typedef enum
71 {
72 	OFF		= 0,
73 	AUDIO_IN	= 1,
74 	CONSTANT	= 2,
75 	OUTPUT		= 3
76 } BShaprInputIndex;
77 
78 typedef enum
79 {
80 	LEVEL		= 0,
81 	BALANCE		= 1,
82 	WIDTH		= 2,
83 	LOW_PASS	= 3,
84 	HIGH_PASS	= 4,
85 	GAIN		= 5,
86 	LOW_PASS_LOG	= 6,
87 	HIGH_PASS_LOG	= 7,
88 	PITCH		= 8,
89 	DELAY		= 9,
90 	DOPPLER		= 10,
91 	DISTORTION	= 11,
92 	DECIMATE	= 12,
93 	BITCRUSH	= 13,
94 
95 #ifdef SUPPORTS_CV
96 	SEND_CV		= 14
97 #else
98 	SEND_MIDI	= 14
99 #endif
100 
101 } BShaprTargetIndex;
102 
103 typedef enum
104 {
105 	INTERNAL	= 0,
106 	AUDIO_OUT	= 1
107 } BShaprOutputIndex;
108 
109 #endif /* PORTS_H_ */
110