Генерация динамической функции алгоритма маневрового двора - PullRequest
0 голосов
/ 22 октября 2018

Мне нужна некоторая концептуальная помощь для моего приложения Qt.

У меня есть программа, которая получает данные изображения от 12 аналоговых цифровых преобразователей (АЦП - они оцифровывают сигнал 12 детекторов в электронном микроскопе).Я отображаю эти изображения в прямом эфире в моем приложении.Теперь я хочу дать пользователю возможность очень гибко применять математические операции к сигналам, сохраняя при этом отображение в реальном времени.

Поэтому я рассматриваю возможность реализации алгоритма маневрового двора.Моя идея состоит в том, что пользователь вводит / смешивает сигналы в текстовом поле, как ему / ей нравится.Например, если требуется сумма четырех сигналов АЦП, пользователь просто вводит

"ADC01 + ADC02 + ADC03 + ADC04"

. Я понимаю, как применить алгоритм для получения польской записи Postfix, а также как оценить такое выражение.Однако этот подход кажется слишком медленным, чтобы применять его к текущим значениям 8x256x256 (восемь квадратных изображений, к сожалению, все значения необходимо обновлять одновременно).Конечно, преобразование Postfix нужно сделать только один раз, но вставка моих переменных и оценка мне кажется гораздо более дорогостоящей, чем просто запись

uint valToDisp = ADC[1]+ADC[2]+ADC[3]+ADC[4];

в коде.

Можете ли выпридумаете, как сделать такое с хорошей производительностью?Я думал о том, чтобы создать какую-то динамическую функцию из постфикса, но я не уверен, как реализовать что-то подобное в C ++.

...