ManagerFIAliasAliasMap.hpp

Go to the documentation of this file.
00001 
00015 #ifndef ManagerFIAliasAliasMap_H
00016 #define ManagerFIAliasAliasMap_H
00017 
00018 //--------------------------------------------------------------------
00019 
00020 // OpenAnalysis headers
00021 #include <OpenAnalysis/Alias/InterAliasMap.hpp>
00022 #include <OpenAnalysis/Alias/ManagerFIAlias.hpp>
00023 #include <map>
00024 
00025 namespace OA {
00026   namespace Alias {
00027 
00034 class ManagerFIAliasAliasMap : public ManagerFIAlias 
00035 { 
00036 public:
00037   ManagerFIAliasAliasMap(OA_ptr<AliasIRInterface> _ir);
00038   ~ManagerFIAliasAliasMap () {}
00039 
00041   OA_ptr<Alias::InterAliasMap> 
00042   performAnalysis(OA_ptr<IRProcIterator> procIter,
00043                   FIAliasImplement implement = ALL_PROCS );
00044 
00045 private:
00046 
00049   void buildAliasMaps( OA_ptr<UnionFindUniverse> ufset,
00050                        OA_ptr<IRProcIterator> procIter );
00051 
00053   OA_ptr<InterAliasMap> mInterAliasMap;
00054 
00055 };
00056 
00057   } // end of Alias namespace
00058 } // end of OA namespace
00059 
00060 #endif