00001 00027 #ifndef ManagerAliasMapXAIF_h 00028 #define ManagerAliasMapXAIF_h 00029 00030 //-------------------------------------------------------------------- 00031 // OpenAnalysis headers 00032 #include <OpenAnalysis/Utils/OA_ptr.hpp> 00033 #include <OpenAnalysis/UDDUChains/Interface.hpp> 00034 #include <OpenAnalysis/CFG/CFGInterface.hpp> 00035 #include <OpenAnalysis/XAIF/AliasMapXAIF.hpp> 00036 #include <OpenAnalysis/IRInterface/XAIFIRInterface.hpp> 00037 00038 namespace OA { 00039 namespace XAIF { 00040 00046 class ManagerAliasMapXAIF { //??? eventually public OA::AnnotationManager 00047 00048 public: 00049 ManagerAliasMapXAIF(OA_ptr<XAIFIRInterface>); 00050 ~ManagerAliasMapXAIF () {} 00051 00053 OA_ptr<XAIF::AliasMapXAIF> performAnalysis(ProcHandle, 00054 OA_ptr<Alias::Interface> alias); 00055 00058 //AliasMapXAIF* performAnalysis(ProcHandle); 00059 00060 private: 00061 OA_ptr<XAIFIRInterface> mIR; 00062 00063 static int sCurrentStartId; 00064 00065 static int getNextSetId(); 00066 00067 }; // end class ManagerAliasMapXAIF 00068 00069 } // end of XAIF namespace 00070 } // end of OA namespace 00071 00072 #endif
1.7.1