mathnode: expanded math node

Implemented handling of various different types.
This commit is contained in:
itsmattkc
2020-04-01 05:21:50 +11:00
parent 74e36bc99d
commit 1363d2b94c
11 changed files with 359 additions and 72 deletions
+3 -3
View File
@@ -42,19 +42,19 @@ Node::Capabilities PanNode::GetCapabilities(const NodeValueDatabase &) const
return kSampleProcessor;
}
NodeInput *PanNode::ProcessesSamplesFrom() const
NodeInput *PanNode::ProcessesSamplesFrom(const NodeValueDatabase &value) const
{
return samples_input_;
}
void PanNode::ProcessSamples(const NodeValueDatabase *values, const AudioRenderingParams &params, const SampleBufferPtr input, SampleBufferPtr output, int index) const
void PanNode::ProcessSamples(const NodeValueDatabase &values, const AudioRenderingParams &params, const SampleBufferPtr input, SampleBufferPtr output, int index) const
{
if (params.channel_count() != 2) {
// This node currently only works for stereo audio
return;
}
float pan_val = (*values)[panning_input_].Get(NodeParam::kFloat).toFloat();
float pan_val = values[panning_input_].Get(NodeParam::kFloat).toFloat();
for (int i=0;i<params.channel_count();i++) {
output->data()[i][index] = input->data()[i][index];