DataIO
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
EIDOLOneReader.h
Go to the documentation of this file.
1 #ifndef EIDOL_ONE_READER_H
2 #define EIDOL_ONE_READER_H
3 
4 #include <string>
5 #include "dataio/DataIODefines.h"
6 
7 struct EPermittedWay;
9 
11 {
12 public:
14  ~EIDOLOneReader();
15 
16  // return values { 0 = all ok ; 1 = some error; 2 = from not found; 3 = to not found }
17  static long FindUpZoneWayPart1( short zoneNumberFrom, short zoneNumberTo, short* zoneWayCountArr, const char* idolOneFileName);
18  static long FindUpZoneWayPart2( short upZoneNumberFrom, short upZoneNumberTo, short* zoneWayCountArr, const char* idolOneFileName);
19 
20  static long SpecialPermittedWayCount( const char *idolOneFileName );
21  static long PermittedWayCount( const char *idolOneFileName );
22 
23  static long GetSpecialPermittedWayByIdx( short &zoneNumberFrom, short &zoneNumberTo, short* zoneWayCountArr, long idx, const char* idolOneFileName);
24  static long GetPermittedWayByIdx( short &zoneNumberFrom, short &zoneNumberTo, short* zoneWayCountArr, long idx, const char* idolOneFileName);
25 
26  static EPermittedWay* GetAllPermittedWay( int &count, const char *idolOneFileName );
27  static ESpecialPermittedWay* GetAllSpecialPermittedWay( int &count, const char *idolOneFileName );
28  static short GetReaderVersion1();
29  static long IdolOneHeader( short &fileVersion1, std::string &fileVersion2, std::string &validityDate, const char* idolOneFileName );
30 
31 private:
32  static long FindPart1( FILE* file, long startPos, long endPos, short upZoneNumberFrom, short upZoneNumberTo, short* zoneWayCountArr, short recSize);
33  static long FindPart2( FILE* file, long startPos, long endPos, short upZoneNumberFrom, short upZoneNumberTo, short* zoneWayCountArr, short recSize);
34 };
35 
37 {
42 };
43 
45 {
50 };
51 
52 struct EPermittedWay
53 {
54  short m_UpZoneNumberFrom;
55  short m_UpZoneNumberTo;
57 
58  long LoadData( FILE *dataFile );
59 };
60 
62 {
63  short m_ZoneNumberFrom;
64  short m_ZoneNumberTo;
66 
67  long LoadData( FILE *dataFile );
68 };
69 
70 #endif
short m_UpZoneWay[spws_UpZoneWayCount]
Definition: EIDOLOneReader.h:65
short m_UpZoneWay[pws_UpZoneWayCount]
Definition: EIDOLOneReader.h:56
Definition: EIDOLOneReader.h:49
short m_UpZoneNumberTo
Definition: EIDOLOneReader.h:55
short m_ZoneNumberFrom
Definition: EIDOLOneReader.h:63
Definition: EIDOLOneReader.h:10
Definition: EIDOLOneReader.h:52
Definition: EIDOLOneReader.h:39
short m_UpZoneNumberFrom
Definition: EIDOLOneReader.h:54
Definition: EIDOLOneReader.h:47
long LoadData(FILE *dataFile)
Definition: EIDOLOneReader.cpp:40
Definition: EIDOLOneReader.h:40
short m_ZoneNumberTo
Definition: EIDOLOneReader.h:64
PermittedWaySizes
Definition: EIDOLOneReader.h:44
Definition: EIDOLOneReader.h:38
Definition: EIDOLOneReader.h:61
Definition: EIDOLOneReader.h:41
Definition: EIDOLOneReader.h:48
Definition: EIDOLOneReader.h:46
long LoadData(FILE *dataFile)
Definition: EIDOLOneReader.cpp:19
#define DATAIO_API
Definition: DataIODefines.h:10
SpecialPermittedWaySizes
Definition: EIDOLOneReader.h:36