00001 #ifndef METHOD_H_INCLUDED_ 00002 #define METHOD_H_INCLUDED_ 00003 00004 #include <vector> 00005 00006 #include "rose.h" 00007 00008 #include "function.h" 00009 00010 namespace risc { 00011 00012 class Event; 00013 class Port; 00014 00015 typedef std::vector<Event*> EventVector; 00016 typedef std::vector<Port*> PortVector; 00017 00018 class Method: public Function { 00019 00020 public: 00021 00025 explicit Method(SgFunctionDefinition *ast_node); 00026 00027 EventVector static_event_sensitivity_list_; 00028 PortVector static_port_sensitivity_list_; 00029 00033 void print_event_list(); 00034 00035 private: 00039 Method(const Method &m); 00040 }; 00041 00042 typedef std::vector<Method*> MethodVector; 00043 typedef std::vector<Method*>::iterator MethodVectorIter; 00044 typedef std::vector<Method*>::const_iterator MethodVectorConstIter; 00045 00046 }; // end namespace risc 00047 00048 #endif /* METHOD_H_INCLUDED_ */ 00049 00050 /* ex: set softtabstop=2 tabstop=2 shiftwidth=2 expandtab: */