1 /*****************************************************************************/
2 /*                                                                           */
3 /*                 (C) Copyright 1992-1997  Alberto Pasquale                 */
4 /*                                                                           */
5 /*                   A L L   R I G H T S   R E S E R V E D                   */
6 /*                                                                           */
7 /*****************************************************************************/
8 /*                                                                           */
9 /* This source code is NOT in the public domain and it CANNOT be used or     */
10 /* distributed without written permission from the author.                   */
11 /*                                                                           */
12 /*****************************************************************************/
13 /*                                                                           */
14 /* How to contact the author:  Alberto Pasquale of 2:332/504@fidonet         */
15 /*                             Viale Verdi 106                               */
16 /*                             41100 Modena                                  */
17 /*                             Italy                                         */
18 /*                                                                           */
19 /*****************************************************************************/
20 
21 // IOcur.hpp
22 
23 
24 #ifndef IOCUR_HPP
25 #define IOCUR_HPP
26 
27 #include <stdio.h>
28 
29 class InpOut;
30 class InMem;
31 class PhoneIndex;
32 
33 
34 class ALTAB {     // pointers to sorted array of pointers to InpOut lists
35   public:
36     ADRDATA **pw,
37             **ph,
38             **nf,
39             **fl,
40             **cs;
41 
42     ALTAB (InpOut *o);
43     ~ALTAB (void);
44 };
45 
46 
47 #define HeaderSize 80
48 
49 class INPCUR {
50   public:
51     char  header[HeaderSize];
52     short txt_pg_lines;
53     short txt_pagenum;
54     FILE  *nodelist_txt;
55     FILE  *nodelist_prn;
56 
57     ALTAB *tab;
58 
59     INPCUR (InpOut *o);
60     ~INPCUR (void);
61 };
62 
63 
64 class OUTCUR {
65   public:
66 
67     dword datofs,
68           dtpofs;
69 
70     FILE  *nodex_dat,
71           *nodex_dtp;
72 
73     dword nzones,
74           nregions,
75           nnets,
76           nhubs,
77           naddr,
78           nphones,
79           nsysops,
80           npoints,
81           nnodes,
82           nexcluded,
83           ndown,
84           nunknown,
85           nredirect,
86           nnullphone;
87 
88 
89     ALTAB *tab;
90 
91     FILE  *fidouser_sss;
92     FILE  *nodexndx_sss;
93     InMem *heap;
94 
95     OUTCUR (InpOut *o);
96     void FreeTab (void);
97     ~OUTCUR (void);
98 };
99 
100 
101 ADRDATA *GetData (ADR *adr, ADRDATA **o, uint n, ADRDATA **cobo, uint cobn);
102 
103 
104 #endif
105