Цитата(Dubov @ Nov 19 2014, 12:13)

В моей программе я принимаю поток данных от АЦП и складываю в буфер длинной N, как только буфер заполняется, программа должна делать математическую обработку данных над числами в буфере и складывать результат в другой бефер, и так по кругу, заполняются два буфера по кругу и производятся вычисления.
Вопрос: как наиболее красиво реализовать механизм "сигнализации" о том что буфер заполнен и пора производить вычисления?
с ростом сложности программы, глобальных переменных становится больше и код трудно читаем. Когда нужно рассчитывать десяток параметров на разных временных интервалах встаёт вопрос об упрощении структуры и читаемости программного кода. Десяток опрашиваемых глобальных переменных - это не очень красиво.
как сделать проще/удобнее/красивее ?
Как угодно

Слишком общий вопрос, ответить невозможно. "Скажите мне, как написать хорошую программу...."
- вся рограмма однопоточная, все вызовы синхронные ?
- программа настояще - многопоточная?
- данные от АЦП принимаются в прерывании, обработка делается в главном цикле?
- программные таймеры и флаговый автомат ?
Можно вообще ничего явно не опрашивать, валить данные от АЦП в циклический буфер, обработчик данных из него будет выгребать. Вся функциональность сосредоточена в имплементации буфера.
Каков вопрос, таков и ответ.