adjusted custom expressions to handle power sweep data

This commit is contained in:
Jan Käberich 2021-07-10 13:36:25 +02:00
parent dda149f3d5
commit 6fdbaea55f
3 changed files with 27 additions and 6 deletions

View file

@ -41,11 +41,13 @@ void Math::Expression::edit()
exp = ui->expEdit->text();
expressionChanged();
});
// TODO add power domain
if(dataType == DataType::Time) {
// select the label explaining the time domain variables (frequency label is the default)
ui->stackedWidget->setCurrentIndex(1);
switch(dataType) {
case DataType::Frequency: ui->stackedWidget->setCurrentIndex(0); break;
case DataType::Time: ui->stackedWidget->setCurrentIndex(1); break;
case DataType::Power: ui->stackedWidget->setCurrentIndex(2); break;
default: break;
}
d->show();
}
@ -78,6 +80,7 @@ void Math::Expression::inputSamplesChanged(unsigned int begin, unsigned int end)
for(unsigned int i=begin;i<end;i++) {
t = in[i].x;
f = in[i].x;
P = in[i].x;
w = in[i].x * 2 * M_PI;
d = root()->timeToDistance(t);
x = in[i].y;
@ -103,6 +106,7 @@ void Math::Expression::expressionChanged()
parser->RemoveVar("d");
parser->RemoveVar("f");
parser->RemoveVar("w");
parser->RemoveVar("P");
switch(dataType) {
case DataType::Time:
parser->DefineVar("t", Variable(&t));
@ -112,6 +116,9 @@ void Math::Expression::expressionChanged()
parser->DefineVar("f", Variable(&f));
parser->DefineVar("w", Variable(&w));
break;
case DataType::Power:
parser->DefineVar("P", Variable(&P));
break;
default:
break;
}