-
Notifications
You must be signed in to change notification settings - Fork 0
/
rosAFEStruct.idl
140 lines (119 loc) · 3.54 KB
/
rosAFEStruct.idl
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
#ifndef ROSAFESTRUCT_IDL
#define ROSAFESTRUCT_IDL
module rosAFE {
struct infos {
unsigned long sampleRate;
double bufferSize_s_port;
double bufferSize_s_getSignal;
};
struct signalOneD
{
sequence<double> data;
};
struct signalND
{
sequence<signalOneD > dataN;
};
struct signalNxND
{
sequence<signalND > dataNxN;
};
struct TimeDomainSignalPortStruct {
unsigned long sampleRate;
unsigned long long lastFrameIndex;
unsigned long long framesOnPort;
signalOneD left;
signalOneD right;
};
struct TimeFrequencySignalPortStruct {
unsigned long sampleRate;
unsigned long long lastFrameIndex;
unsigned long long framesOnPort;
unsigned long numberOfChannels;
signalND left;
signalND right;
};
struct CrossCorrelationSignalPortStruct {
unsigned long sampleRate;
unsigned long long lastFrameIndex;
unsigned long long framesOnPort;
unsigned long long numberOfLags;
unsigned long numberOfChannels;
signalNxND left;
};
struct inputProcsParametres {
string name;
boolean in_doNormalize;
unsigned long long in_normalizeValue;
};
struct preProcsParametres {
string name;
boolean pp_bRemoveDC;
double pp_cutoffHzDC;
boolean pp_bPreEmphasis;
double pp_coefPreEmphasis;
boolean pp_bNormalizeRMS;
double pp_intTimeSecRMS;
boolean pp_bLevelScaling;
double pp_refSPLdB;
boolean pp_bMiddleEarFiltering;
string pp_middleEarModel;
boolean pp_bUnityComp;
};
struct gammatoneProcsParametres {
string name;
string fb_type;
double fb_lowFreqHz;
double fb_highFreqHz;
double fb_nERBs;
unsigned long fb_nChannels;
sequence<double> fb_cfHz;
unsigned long fb_nGamma;
double fb_bwERBs;
};
struct ihcProcsParametres {
string name;
string ihc_method;
};
struct ildProcsParametres {
string name;
string ild_wname;
double ild_wSizeSec;
double ild_hSizeSec;
};
struct ratemapProcsParametres {
string name;
string rm_wname;
double rm_wSizeSec;
double rm_hSizeSec;
string rm_scaling;
double rm_decaySec;
};
struct crossCorrelationParametres {
string name;
string cc_wname;
double cc_wSizeSec;
double cc_hSizeSec;
double cc_maxDelaySec;
sequence<double> cc_lags;
};
struct parameters {
sequence<inputProcsParametres> input;
sequence<preProcsParametres> preProc;
sequence<gammatoneProcsParametres> gammatone;
sequence<ihcProcsParametres> ihc;
sequence<ildProcsParametres> ild;
sequence<ratemapProcsParametres> ratemap;
sequence<crossCorrelationParametres> crossCorrelation;
};
struct dataObjSt {
sequence<TimeDomainSignalPortStruct> input;
sequence<TimeDomainSignalPortStruct> preProc;
sequence<TimeFrequencySignalPortStruct> gammatone;
sequence<TimeFrequencySignalPortStruct> ihc;
sequence<TimeFrequencySignalPortStruct> ild;
sequence<TimeFrequencySignalPortStruct> ratemap;
sequence<CrossCorrelationSignalPortStruct> crossCorrelation;
};
};
#endif /* ROSAFESTRUCT_IDL */