Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Gauthier Quesnel
irritator
Commits
da56eaa2
Commit
da56eaa2
authored
Aug 13, 2020
by
K-H-Ismail
Committed by
Gauthier Quesnel
Aug 13, 2020
Browse files
core: add array sigmas in flow model
parent
36cce5bc
Changes
1
Hide whitespace changes
Inline
Side-by-side
lib/include/irritator/core.hpp
View file @
da56eaa2
...
...
@@ -4823,20 +4823,24 @@ struct flow
double
default_value
=
0.0
;
std
::
vector
<
double
>
default_data
;
std
::
vector
<
double
>
default_sigmas
;
double
default_samplerate
=
44100.0
;
double
value
=
0.0
;
std
::
vector
<
double
>
data
;
std
::
vector
<
double
>
sigmas
;
double
samplerate
=
44100.0
;
status
initialize
(
data_array
<
message
,
message_id
>&
/*init*/
)
noexcept
{
sigma
=
1.0
/
samplerate
;
samplerate
=
default_samplerate
;
sigma
=
1.0
/
samplerate
;
value
=
default_value
;
data
=
default_data
;
s
amplerate
=
default_s
amplerate
;
s
igmas
=
default_s
igmas
;
return
status
::
success
;
}
...
...
@@ -4846,16 +4850,29 @@ struct flow
time
/*e*/
,
time
/*r*/
)
noexcept
{
value
=
data
[
static_cast
<
int
>
(
t
*
samplerate
)];
double
accu_sigma
=
0
;
for
(
int
i
=
0
;
i
<
sigmas
.
size
();
i
++
)
{
accu_sigma
+=
sigmas
[
i
];
if
(
accu_sigma
>
t
)
{
value
=
data
[
i
];
sigma
=
sigmas
[
i
];
return
status
::
success
;
}
}
return
status
::
success
;
}
status
lambda
(
data_array
<
output_port
,
output_port_id
>&
output_ports
)
noexcept
{
output_ports
.
get
(
y
[
0
]).
messages
.
emplace_front
(
value
);
return
status
::
success
;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment