fdhwlib  2.0.25
/home/kopmann/git-mirror/fdhwlib/fdhwlib/akutil/akinifile.h
Go to the documentation of this file.
00001 /***************************************************************************
00002     akinifile.h  -  description
00003 
00004     begin                : Fri Jul 28 2000
00005     copyright            : (C) 2000 by Andreas Kopmann
00006     email                : kopmann@hpe.fzk.de
00007  ***************************************************************************/
00008 
00009 
00010 #ifndef AKINIFILE_H
00011 #define AKINIFILE_H
00012 
00013 
00014 #include <akutil/inifile.h>
00015 
00028 class akInifile : public Inifile  {
00029 public: 
00030   akInifile(const char * filename, FILE * logfile = 0,
00031      const char *secondDir = 0, const char *thirdDir = 0);
00032 
00033   ~akInifile();
00034 
00035   // --- Extended interface ------
00036 
00037   result SpecifyGroup(const char *string);
00038 
00039 
00040   //##ModelId=399121F9011C
00041   int GetFirstValue(const char *entry, int defValue, result *error);
00042 
00043   int GetNextValue(int defValue, result *error);
00044 
00045   //##ModelId=399121F90118
00046   char * GetFirstString(const char *entry, const char *defString, result *error);
00047 
00048   char * GetNextString(const char *defString, result *error);
00049 
00050   double GetFirstValue(const char *entry, double defValue, result *error);
00051 
00052   double GetNextValue(double defValue, result *error);
00053 
00054 
00055   // --- Basic Interface ----
00056   double GetFirstDouble(const char *entry, result *error);
00057 
00058   double GetNextDouble(result *error);
00059 
00060 protected:
00062   int open(char *filename);
00063 
00068   int concatFilename(char *filepath, char *filename, char *dir);
00069 
00070 private:
00071   //##ModelId=399121F90117
00072   FILE * logfile;
00073 
00075   bool writeLog;
00076 
00077 };
00078 
00079 #endif