DDLScannerBase.h

Go to the documentation of this file.
00001 //$$FILE$$
00002 //$$VERSION$$
00003 //$$DATE$$
00004 //$$LICENSE$$
00005 /* 
00006   PURPOSE:    DDL 2.1 compliant CIF file lexer ...
00007 */
00008 
00009 
00010 #ifndef DDLSCANNERBASE_H
00011 #define DDLSCANNERBASE_H
00012 
00013 
00014 /*
00015 #if !defined(DDL_FLEX_LEXER_INCLUDED)
00016 #undef    yyFlexLexer
00017 #define   yyFlexLexer DDLFlexLexer
00018 #include "FlexLexer.h"
00019 #endif
00020 */
00021 
00022 #include <string>
00023 
00024 using namespace std;
00025 
00026 #include <fstream>
00027 #include <stdio.h>
00028 #include <string.h>
00029 
00030 #ifndef  DEBUG
00031 #define DEBUG  0
00032 #endif
00033 
00034 
00035 class DDLScanner // : public DDLFlexLexer 
00036 {
00037  protected:
00038 
00039   string *_tBuf;
00040   int   _isText;
00041   int   _i, _j, _len;
00042 
00043  protected:
00044   ofstream log;
00045   int _verbose;
00046   void alt_yymore(void);
00047   void OpenLog(const string& logName, int verboseLevel);
00048 
00049  public:
00050   int NDBlineNo;
00051   int isSave;
00052   DDLScanner(istream *yyin);
00053   DDLScanner();
00054   void Clear();
00055   void Reset();
00056   int ProcessNone();
00057   void ProcessWhiteSpace();
00058   int ProcessData();
00059   int ProcessItemSaveBegin();
00060   int ProcessCategorySaveBegin();
00061   int ProcessSaveEndScanner();
00062   int ProcessLoopScanner();
00063   void ProcessStop();
00064   int ProcessDot();
00065   int ProcessQuestion();
00066   void ProcessComment();
00067   int ProcessItemNameScanner();
00068   int ProcessUnquotedString();
00069   int ProcessSQuotedString();
00070   int ProcessDQuotedString();
00071   int ProcessEof();
00072   virtual int yylex();
00073   virtual ~DDLScanner() {Reset();};
00074 };
00075 
00076 #endif
00077 

Generated on Mon Apr 2 09:28:52 2007 for cifparse-obj-v7.0 by  doxygen 1.5.1