Разработчику: Определение времен ОВЗ
Обработка каналов происходит в двух режимах:
- Аналоговый (каналы 3Io,3Uo);
- Логический (все остальные каналы - делятся на "0" и "1").
Аналоговый режим используется для определения StartOZZ и EndOZZ.
Затем остальные каналы переводятся в Логический режим, где последовательно определяются
остальные значения.
Вплоть до версии Pazzma 0.9, вместо Логического использовался режим Нечёткой логики ("0", "+", "-"), поэтому при анализе одних и тех же файлов версиями 0.7 и 0.9 - результаты могут незначительно различаться (в пределах 1-2 samples).
Функции используемые для теста
| // ФУНКЦИИ для анализа файла |
int __fastcall FindMax( short *ofs, int len, short *end){ // Нахождение максимума на отрезке
int __fastcall DatToLogic( int nChannel){ // переводим канал в логические 0 или 1
void WINAPI AnalizeLogic(int cOZZ, int cOvz1, int cOvz2, int cOvz3, int cOvz4, int cOkno){
|
| // ФУНКЦИИ для открытия и проверки Файлов для анализа работы ПЗЗМ |
int __fastcall OpenDat(){ // Открытие и Проверка DAT-файла на пригодность к анализу
int __fastcall Open783(){ // Открытие и Проверка 783-файла на пригодность к анализу
int __fastcall OpenTXTpg3(){ // Открытие и Проверка TXT(pg3)-файла на пригодность к анализу
|
| // ФУНКЦИИ для конвертирования Файлов для анализа работы ПЗЗМ |
int __fastcall ConvertDat(){ // = Convert783()
int __fastcall ConvertTXTpg3(){
|
| // ФУНКЦИИ для работы с файлом-осциллограммой |
int __fastcall CloseWorkFile(){ // Закрытие файла
int __fastcall ReadWorkFile(){ // Чтение и конвертация файла для последующего анализа
int __fastcall OpenWorkFile( char *fname){ // Открытие файла для последующего анализа
int __fastcall ProcessWorkFile(){ // Обработка файла во время теста
|
Последовательность обработки задаётся в ProcessWorkFile() и она такова:
- OpenWorkFile() - открывает файл и пытается получить информацию О НЁМ с помощью функций OpenDat(), Open783() и OpenTXTpg3(). Функция, которая "распознает" в файле свой формат, возвращает не нулевое значение, а также заполняет инфо-переменные;
- ReadWorkFile() - читает ТОЛЬКО данные из файла и конвертирует их во внутренний формат с помощью функций ConvertDat() и ConvertTXTpg3();
- CloseWorkFile() - закрывает файл, но не внутренний массив;
- AnalizeLogic() - анализирует внутренний массив;
- SaveReport() - Формирует и Сохраняет Отчёт;