roseTranslators.h

Go to the documentation of this file.
00001 #ifndef ROSETRANSLATORS_H
00002 #define ROSETRANSLATORS_H
00003 
00004 // MSTL
00005 #include <Translator.h>
00006 
00007 //#include <sage3.h>
00008 #include <AstDOTGeneration.h>
00009 #include <AstPDFGeneration.h>
00010 #include <AstConsistencyTests.h>
00011 
00017 class ROSE_DLL_API CppToCppTranslator : public Translator<int> {
00018 
00019  public:
00020   CppToCppTranslator();
00021   virtual ~CppToCppTranslator();
00022   virtual void setOptions(int argc,char** argv);
00023   virtual void frontend();
00024   virtual void midend();
00025   virtual void backend();
00027   virtual int status();
00030   virtual void printMessage(std::string s);
00031 
00032  protected:
00035   SgProject* getAstRoot();
00037   void setAstRoot(SgProject*);
00038   void setStatusCode(int code) { statusCode=code; }
00039  private:
00040   SgProject* sageProject;
00041   int statusCode;
00042 };
00043 
00044 class ROSE_DLL_API CppToVendorTranslator : public CppToCppTranslator {
00045 protected:
00047   virtual void backend();
00048 };
00049 
00050 class ROSE_DLL_API CppToPdfTranslator : public CppToCppTranslator {
00051  protected:
00053   virtual void backend();
00054 };
00055 
00056 
00057 class ROSE_DLL_API CppToDotTranslator : public CppToCppTranslator {
00058  protected:
00060   void backend();
00061 };
00062 
00063 
00064 class ROSE_DLL_API RoseTestTranslator : public CppToVendorTranslator {
00065  protected:
00068   virtual void midend();
00069 };
00070 
00071 #endif
00072 
00073 
00074 
00075 
00076 
00077 
00078 
00079 
00080 
00081 
00082 
00083 

Generated on Sat May 19 00:53:07 2012 for ROSE by  doxygen 1.4.7