|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Alexander S. Usov 2:5020/400 23 Jan 2003 18:27:13 To : Zahar Kiselev Subject : Re: научный вопрос -------------------------------------------------------------------------------- Zahar Kiselev wrote: > Я уже нашел сборник функций на Си для управления визуализацией > (гнуплотом). Оно работает. Разговор же шел лишь о том, что написано > оно с моей точки зрения не идеально и я хотел бы это > усовершенствовать, введя "обратную связь по переполнению". > Сомневаюсь, что на малознакомом мне языке я напишу это же самое с нуля > лучше, чем есть сейчас на Си в готовом виде. > А вот текст на более-менее знакомом Си усовершенствовать я вероятнее > всего смогу. Захар, для того чтобы сделать это на Ц, тебе прийдётся вешать гнуплот не на пайп, а на псевдо-терминал. Потом как-то парсить его ответы и делать синхронизацию. expect же с самого начала предназначался именно для таких вещей. И я не уверен что для тебя есть смысл переписывать его функциональность. > MM> биндинг к С процедурам (есть масса примеров как делать биндинги > в MM> Tcl) и "клеишь" все вместе. Получится довольно гибкое > решение... > Гибкое, но делать и отлаживать его долго и достаточно лениво. Ибо TCL > я знаю на уровне чайника, а как с ним стыковать Си - не знаю вообще. И > имею определенное предубеждение против возни с передачей параметров и > взаимным вызовом процедур на разных языках. Возился с эти когда-то > _много_(и в досе было, и на ЕС ассемблер из PL/1 вызывать > приходилось:) и впечатления остались не самые приятные. Это может быть > оправдано для _больших_ проектов. Hо не для мелочи типа моей задачки. В отличии от многих других случаев tcl делался как-раз для встраивания его в другие программы/безпроблемного приверчивания библиотек к нему. Как раз тут проблем у тебя не должно быть. > MM> касаемо быстродействия - на 300 целероне у меня Tcl с завидной > MM> регулярностью тасует массивы строк в несколько (более 5) тысяч > MM> элементов. Справляется за пристойное время, не мешая остальному. > В данном случае поднимая быстродействие модуля обработки я повышаю > точность измерений. Так как "усреднять" придется при этом _меньшие_ > порции данных с АЦП. Данные можно будет делить на более мелкие куски и > обрабатывать каждый отдельно. Видел когда-нибудь как работает > электронный частотомер? Он сначала долго считает, потом выдает > _усредненный_ результат за время счета, даже если фактическая частота > входного сигнала за это время менялась - на табло мы этого не увидим. > Вот и у меня та же ситуация - чем быстрее считаем, тем более мелкие > колебания отлавливаем. Конечно, можно записать сигнал на диск и > считать "потом", но если я покажу график сразу - то приобрету > дополнительное уважение в глазах своих коллег. Как тебе такой вариант: Есть 3 программулины. 1. написана на Ц, берёт данные с АЦП, переваривает их и результаты пишет в какую-нить fifo или pipe. 2. gnuplot 3. пару строк на expect которые их склеивают. Hу или тебе уже предлагали взять GD. -- Best regards, Alexander. --- ifmail v.2.15dev5 * Origin: KVI (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/65777b818dc2.html, оценка из 5, голосов 10
|