00001 00016 #ifndef ManagerInterActive_h 00017 #define ManagerInterActive_h 00018 00019 //-------------------------------------------------------------------- 00020 // OpenAnalysis headers 00021 00022 #include <OpenAnalysis/Activity/ManagerActiveStandard.hpp> 00023 #include <OpenAnalysis/Activity/ManagerInterDep.hpp> 00024 #include <OpenAnalysis/Activity/ManagerInterUseful.hpp> 00025 #include <OpenAnalysis/Activity/ManagerInterVary.hpp> 00026 #include <OpenAnalysis/IRInterface/ActivityIRInterface.hpp> 00027 00028 #include <OpenAnalysis/Activity/InterActive.hpp> 00029 #include <OpenAnalysis/CFG/EachCFGInterface.hpp> 00030 #include <OpenAnalysis/Alias/InterAliasInterface.hpp> 00031 #include <OpenAnalysis/SideEffect/InterSideEffectInterface.hpp> 00032 00033 namespace OA { 00034 namespace Activity { 00035 00036 00040 class ManagerInterActive { 00041 public: 00042 ManagerInterActive(OA_ptr<Activity::ActivityIRInterface> _ir); 00043 ~ManagerInterActive () {} 00044 00045 OA_ptr<InterActive> performAnalysis( 00046 OA_ptr<CallGraph::Interface> callGraph, 00047 OA_ptr<DataFlow::ParamBindings> paramBind, 00048 OA_ptr<Alias::InterAliasInterface> interAlias, 00049 OA_ptr<SideEffect::InterSideEffectInterface> interSE, 00050 OA_ptr<CFG::EachCFGInterface> eachCFG); 00051 00052 private: // member variables 00053 00054 OA_ptr<Activity::ActivityIRInterface> mIR; 00055 }; 00056 00057 } // end of Activity namespace 00058 } // end of OA namespace 00059 00060 #endif
1.7.1