
- •Int main()
- •Int OpenFk()
- •Void FreeMem()
- •Void ErrObr(int n_err)
- •Void ClearAprkFreeZone()
- •Void ReadFreeZone()
- •Void ReadKdr(int n_kdr)
- •Void WriteFizAp(int n_kdr_t, int canal, float fiz_ap)
- •Void WriteFizRk(int n_kdr_t, int canal, int razr, unsigned long value)
- •Void WriteKdr(int n_kdr_t)
- •Void WriteParam(int n_kdr_t, int canal, int typ)
- •Void ReadSsfk()
- •Void WriteSsfk(int ss_bit)
// Org_Proc.cpp - npogpamma opgaNizacii obpabotki (13.01.10)
#include <dos.h> #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <io.h>
#include "c:\temp\kypc_st\var_glob.h" #include "c:\temp\kypc_st\strctcom.h" #include "c:\temp\kypc_st\func_obr.h"
#include "c:\temp\kypc_st\func_fl.h" #include "c:\temp\kypc_st\N_error.h"
struct od_cop OD; // onozNavatelNue daNNue struct atr_pol APOL; // atpibytu noleta
struct AP **p_AP; // aNalogovui napametp struct RK **p_RK; // pazovaja komaNda
// golovNaja npogpamma
Int main()
{ short reg_rab, // pejim pabotu
fl_ini_obr = 0; // flag iNicializacii obpabotki
clrscr(); // ochistka tekst.okNa i ystaN.kypsopa v levui vepx.ygol
if ((d_fk=OpenFK()) != FL_ERR) // otkputie faila-konii
{ while (1)
{ printf("\n Vvedi pejim pabotu (zadai pejim i Najmi <ENTER>): \n");
printf(" 0 - koNec pabotu (vuxod iz npogpammu)\n");
printf(" 1 - nechat atpibytov fila-konii\n");
printf(" 2 - nechat onozNavatelNux daNNux\n");
printf(" 3 - nechat atpibytov noleta\n");
printf(" 4 - nechat koda napametpov\n");
printf(" 5 - nechat fiziki napametpov\n");
printf(" 6 - obpabotka noleta\n");
printf(" 9 - ochistka free-zoNu ot paschetov\n");
printf(" 10 - sbros v slove sostojaNia faila-konii flagov paschetov\n\n");
scanf("%d", ®_rab); // vvod pejima pabotu
if (!reg_rab) // koNec pabotu?
{ printf("\n KoNec pabotu\n");
FreeMem(); // osvobojdeNie vudeleNNoi namjati
close(d_fk); // zakputie faila-konii
break;
}
if (!fl_ini_obr) // iNicializacia obpabotki vunolNeNa
{ ReadAtrFK(); // chteNie atribytov faila-konii
ReadAtrFlight(); // chteNie atribytov noleta
ReadOD(); // chteNie onozNavatelNux daNNux
ReadCyclogram(reg_rab); // chteNie ciklogpammu
if ((mas_bur_pi=(short *)malloc(sz_kdr)) == (short *)0) // Ne vudeleNa namjat nod byfep kadpa faila-konii?
ErrObr(E_MEM_BUFKADR);
mas_free_rk = (unsigned long *)((char *)mas_bur_pi+sz_bur_kdr); // iNicializacija ykazatelja Na free-zoNy dlja PK
mas_free_pi = (float *)mas_free_rk; // iNicializacija ykazatelja Na free-zoNy dlja An
fl_ini_obr = 1; // vzvedeNie flaga iNicializacija obpabotki
}
ReadFreeZone(); // chteNie free-zoN kadpov faila-konii v vudeleNNue massivu
switch(reg_rab) // zanysk vubpaNNogo pejima pabotu
{ case 1: PrintAtrFK(); break; // nechat atpibutov faila-konii
case 2: PrintOD(); break; // nechat onozNavatelNux daNNux
case 3: PrintAtrFlight(); break; // nechat atpibutov noleta
case 4: PrintParam(); break; // nechat koda napametpov (kadp byp)
case 5: PrintFreeZone(); break; // nechat "fiziki" napametpov (free-zoNa)
case 6: CalculateFlight(); break; // obpabotka faila-konii
case 9: ClearAPRKFreeZone(); break; // ochistka free-zoNu ot paschetov
case 10: WriteSSFK(037); break; // sbpos flagov vunolNeNNux paschetov v slove sostojaNia faila-konii
default: ; break;
}
}
}
textcolor (12); // ystaNovka cveta
return(FL_OK);
}
// OPENFK.cpp - otkputie failov (13.01.10)
#include <stdio.h> #include <fcntl.h> #include <io.h>
#include "c:\temp\kypc_st\func_obr.h" #include "c:\temp\kypc_st\N_error.h"
// otkputie faila-konii