Main Page | Class Hierarchy | Class List | Directories | File List | Class Members

addTraceString.h

00001 #ifndef ADDTRACESTRING_H
00002 #define ADDTRACESTRING_H
00003 
00004 #include <stdio.h>
00005 #include <vector>
00006 #include <string>
00007 #include <map>
00008 #include "traceString.h"
00009 class CxxScanner;
00010 class IO;
00011 class Token;
00012 class State;
00013 class Options;
00014 //====================================================
00033 //====================================================
00034 class AddTraceString
00035 {
00036  public:
00037   //====================================================
00045   //====================================================
00046   AddTraceString();
00047 
00048   ~AddTraceString();                    
00049 
00050 
00051   //====================================================
00068   //====================================================
00069   void         addTraceString(const char* fileName);
00070 
00071 
00072   //====================================================
00076   //====================================================
00077   void         lpSet(int i)                  { m_lp  = i;             }
00078 
00079   //====================================================
00083   //====================================================
00084   void         lpAdd(int i)                  { m_lp += i;             }
00085 
00086   //====================================================
00090   //====================================================
00091   int          lp()                          { return m_lp;           }
00092 
00093   //====================================================
00097   //====================================================
00098   void         lbSet(int i)                  { m_lb  = i;             }
00099 
00100   //====================================================
00104   //====================================================
00105   void         lbAdd(int i)                  { m_lb += i;             }
00106 
00107   //====================================================
00111   //====================================================
00112   int          lb()                          { return m_lb;           }
00113 
00114   //====================================================
00118   //====================================================
00119   void         setFuncName(const char* fdec) { m_fdec.assign(fdec);   }
00120 
00121   //====================================================
00125   //====================================================
00126   std::string& funcName()                    { return  m_fdec;        }
00127 
00128   //====================================================
00132   //====================================================
00133   void         setFuncArgs(const char* s)    { m_funcArgs.assign(s);  }
00134 
00135   //====================================================
00139   //====================================================
00140   void         funcArgsAppend(const char* s) { m_funcArgs += s;       }
00141 
00142   //====================================================
00146   //====================================================
00147   std::string& funcArgs()                    { return m_funcArgs;     }
00148 
00149   //====================================================
00153   //====================================================
00154   void         changeState(State* s);
00155 
00156   //====================================================
00160   //====================================================
00161   Tbl&         buildTbl();
00162 
00163   //====================================================
00167   //====================================================
00168   void         namespacePop();
00169 
00170   //====================================================
00174   //====================================================
00175   void         namespaceAppend(const char* s);
00176 
00177 
00178   //====================================================
00182   //====================================================
00183   void         defineMacro(CxxScanner& scanner, Token& t);
00184 
00185   //====================================================
00189   //====================================================
00190   void         nameSpace(CxxScanner& scanner, Token& t);
00191 
00192   //====================================================
00197   //====================================================
00198   void         klass(CxxScanner& scanner, Token& t);
00199 
00200   //====================================================
00204   //====================================================
00205   void         enumDef(CxxScanner& scanner, Token& t);
00206 
00207   //====================================================
00211   //====================================================
00212   void         trace(CxxScanner& scanner, Token& t);
00213 
00214   //====================================================
00219   //====================================================
00220   void         templateBlk(CxxScanner& scanner, Token& t);
00221 
00222   //====================================================
00227   //====================================================
00228   void structDef(CxxScanner& scanner, Token& t);
00229 
00230 
00231  private:
00232   //====================================================
00236   //====================================================
00237   int m_lp;
00238 
00239   //====================================================
00243   //====================================================
00244   int m_lb;
00245 
00246   //====================================================
00250   //====================================================
00251   State* mp_state;
00252 
00253 
00254   //====================================================
00261   //====================================================
00262   Tbl m_tbl;
00263 
00264   //====================================================
00268   //====================================================
00269   std::string  m_fdec;
00270 
00271   //====================================================
00275   //====================================================
00276   std::string  m_funcArgs;
00277 
00278   //====================================================
00282   //====================================================
00283   std::string  m_fqName;
00284 
00285   //====================================================
00289   //====================================================
00290   std::string  m_className;
00291 
00292   //====================================================
00296   //====================================================
00297   std::string  m_buffer;
00298 
00299 
00300   //====================================================
00304   //====================================================
00305   std::vector<char*> m_namespaceA;
00306 
00307 };
00308 
00309 
00310 
00311 #endif  //ADDTRACESTRING_H
00312 



Project Hosted By:
SourceForge.net Logo