All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
port.h
Go to the documentation of this file.
1 #ifndef PORT_H_INCLUDED_
2 #define PORT_H_INCLUDED_
3 
4 #include "rose.h"
5 
6 #include "module.h"
7 #include "object.h"
8 
9 namespace risc {
10 
11 class Port: public Object {
12 
13 public:
14 
18  explicit
19  Port(SgVariableDefinition *ast_node, Class *parent, Type type = PortType);
20 
25  virtual std::string get_ast_type_name();
26 
28 
37  void get_mapped_channels(std::set<risc::Object*> &channels);
38 
48  void get_mapped_channel_types(std::set<risc::Class*> &channels);
49 
50  /*
51  * after loading psg, this flag of the loaded port is set to true
52  *
53  */
54  bool bounded;
55 private:
56 
60  Port(const Port &p);
61 };
62 
63 typedef std::vector<Port*> PortVector;
64 typedef std::vector<Port*>::iterator PortVectorIter;
65 typedef std::vector<Port*>::const_iterator PortVectorConstIter;
66 
67 } // end of namespace risc
68 
69 #endif /* PORT_H_INCLUDED_ */
70 
71 /* ex: set softtabstop=2 tabstop=2 shiftwidth=2 expandtab: */
void get_mapped_channels(std::set< risc::Object * > &channels)
This function determines all potential mapped channels to this port.
Definition: port.cpp:24
Port(SgVariableDefinition *ast_node, Class *parent, Type type=PortType)
default constructor
Definition: port.cpp:12
Definition: class.h:53
Definition: object.h:10
Definition: port.h:11
void get_mapped_channel_types(std::set< risc::Class * > &channels)
This function determines all potential mapped channels types to this port.
Definition: port.cpp:86
std::vector< Port * >::iterator PortVectorIter
Definition: port.h:64
std::vector< Port * > PortVector
Definition: class.h:44
std::vector< Port * >::const_iterator PortVectorConstIter
Definition: port.h:65
Class * parent_
Definition: port.h:27
Definition: definition.h:39
Type
We are using these enums to identify type type of and instance or definition during traversal...
Definition: definition.h:20
bool bounded
Definition: port.h:54
virtual std::string get_ast_type_name()
Get function for the name of the ast type of the port.
Definition: port.cpp:19