home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 2 BBS / 02-BBS.zip / fsrc1241.zip / cfgfile_interface.h < prev    next >
Text File  |  1996-08-03  |  2KB  |  73 lines

  1. /* CFGFILE_INTERFACE.H */
  2.  
  3. #define READCFG_AREAS        1UL
  4. #define READCFG_USERDATA     2UL
  5. #define READCFG_OUTBOUNDS    4UL
  6. #define READCFG_ALL     (READCFG_AREAS |\
  7.                          READCFG_USERDATA |\
  8.                          READCFG_OUTBOUNDS)
  9.  
  10. #define CFGFILE_OK            0     /* kein Fehler */
  11. #define CFGFILE_OPEN          1     /* Fehler beim Öffnen eines Files */
  12. #define CFGFILE_READ          2     /* Lesefehler */
  13. #define CFGFILE_VERSION       3     /* Falsche CFG-File-Version */
  14. #define CFGFILE_GENDATA       4     /* Fehler in allgemeinen Daten */
  15. #define CFGFILE_AREA          5     /* Fehler in Area-Definition */
  16. #define CFGFILE_NOAREA        6     /* keine Area definiert */
  17.  
  18.  
  19. /* dynamisches Interface */
  20.  
  21. /* Ordinals */
  22. #define ORDINAL_QUERYID        1
  23. #define ORDINAL_QUERYNAME      2
  24. #define ORDINAL_READCFG        3
  25. #define ORDINAL_QUERYVER       4
  26.  
  27. /* Funktionstypen */
  28. typedef ULONG (*QUERYFORMATID)(void);
  29. typedef ULONG (*QUERYVER)(void);
  30. typedef PCHAR (*QUERYFORMATNAME)(void);
  31. typedef int   (*READCFGFILE)(char *, USERDATAOPT *, OUTBOUND *, PAREALIST,
  32.                              PDRIVEREMAP, ULONG);
  33.  
  34. /* Versionsnummer */
  35. #define CURRENT_CFGVER  0x46533032     /* == "FS02" */
  36.  
  37.  
  38. /* Struktur */
  39. typedef struct cfgdll
  40. {
  41.    struct cfgdll *next;
  42.  
  43.    ULONG ulFormatID;
  44.    char  pchFormatName[50];
  45.    char  pchDLLName[LEN_PATHNAME+1];
  46. } CFGDLL, *PCFGDLL;
  47.  
  48. /* Funktionen */
  49.  
  50. PCFGDLL CFG_ReadFormatList(void);
  51. PCFGDLL CFG_FindFormat(PCFGDLL pList, ULONG ulFormatID, PCFGDLL pPrev);
  52.  
  53. #define CFGTYPE_ANY 0xffffffff
  54.  
  55. typedef struct
  56. {
  57.    HMODULE         hmodCfgDLL;
  58.    QUERYFORMATID   QueryFormatID;
  59.    QUERYFORMATNAME QueryFormatName;
  60.    QUERYVER        QueryVer;
  61.    READCFGFILE     ReadCfgFile;
  62. } LOADEDCFGDLL, *PLOADEDCFGDLL;
  63.  
  64. int CFG_LoadDLL(PCHAR pchDLLName, PLOADEDCFGDLL pLoadedCfgDLL);
  65.  
  66. #define LOADCFGDLL_OK           0
  67. #define LOADCFGDLL_CANTLOAD     1
  68. #define LOADCFGDLL_FUNCMISSING  2
  69. #define LOADCFGDLL_VERSION      3
  70. #define LOADCFGDLL_UNSUPPFORMAT 4
  71.  
  72. /* Ende CFGFILE_INTERFACE.H */
  73.