All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
targetsocket.h
Go to the documentation of this file.
1 #ifndef TARGETSOCKET_H_INCLUDED_
2 #define TARGETSOCKET_H_INCLUDED_
3 
4 #include <vector>
5 
6 #include "class.h"
7 #include "socket.h"
8 
9 #include "rose.h"
10 
11 namespace risc {
12 
13 class TargetSocket: public Socket {
14 
15 public:
16 
17  TargetSocket();
21  explicit TargetSocket(SgVariableDefinition *ast_node, Class *parent);
22 
27  void get_mapped_sockets(std::set<risc::Socket*> &mapped_sockets);
28 
32  void register_b_transport(SgFunctionDeclaration*);
33 
37  SgFunctionDeclaration* get_registered_bt();
38 
42  void register_get_dmi(SgFunctionDeclaration* func_decl);
43 
47  SgFunctionDeclaration* get_registered_get_dmi();
48 
52  void register_nb_transport_fw(SgFunctionDeclaration* func_decl);
53 
57  SgFunctionDeclaration* get_registered_nb_transport_fw();
58 
59 
60 private:
64  TargetSocket(const TargetSocket &ip);
65 
69  SgFunctionDeclaration* registered_b_transport_;
70 
74  SgFunctionDeclaration* registered_get_dmi;
75 
79  SgFunctionDeclaration* registered_nb_transport_fw_;
80 };
81 
82 typedef std::vector<TargetSocket*> TargetSocketVector;
83 typedef std::vector<TargetSocket*>::iterator TargetSocketVectorIter;
84 typedef std::vector<TargetSocket*>::const_iterator TargetSocketVectorConstIter;
85 
86 }; // end namespace risc
87 
88 #endif /* TARGETSOCKET_H_INCLUDED_ */
89 
90 /* ex: set softtabstop=2 tabstop=2 shiftwidth=2 expandtab: */
SgFunctionDeclaration * registered_nb_transport_fw_
registered method for nb_transport_fw_
Definition: targetsocket.h:79
std::vector< TargetSocket * >::iterator TargetSocketVectorIter
Definition: targetsocket.h:83
SgFunctionDeclaration * get_registered_nb_transport_fw()
get the registered nb_transport_fw method
Definition: targetsocket.cpp:56
Definition: targetsocket.h:13
SgFunctionDeclaration * registered_get_dmi
registered method for get_direct_mem_ptr
Definition: targetsocket.h:74
TargetSocket()
Definition: targetsocket.cpp:3
Definition: class.h:53
Definition: socket.h:13
std::vector< TargetSocket * >::const_iterator TargetSocketVectorConstIter
Definition: targetsocket.h:84
SgFunctionDeclaration * registered_b_transport_
registered method for b_transport
Definition: targetsocket.h:69
void register_b_transport(SgFunctionDeclaration *)
register the b_transport method for this socket
Definition: targetsocket.cpp:24
void register_get_dmi(SgFunctionDeclaration *func_decl)
register the get_direct_mem_ptr method for this socket
Definition: targetsocket.cpp:37
void get_mapped_sockets(std::set< risc::Socket * > &mapped_sockets)
gets all the sockets that are possibly connected to this socket
Definition: targetsocket.cpp:17
std::vector< TargetSocket * > TargetSocketVector
Definition: class.h:51
void register_nb_transport_fw(SgFunctionDeclaration *func_decl)
register the nb_transport_fw method for this socket
Definition: targetsocket.cpp:49
SgFunctionDeclaration * get_registered_bt()
get the registered b_transport method
Definition: targetsocket.cpp:31
SgFunctionDeclaration * get_registered_get_dmi()
get the registered get_direct_mem_ptr method
Definition: targetsocket.cpp:44