summaryrefslogtreecommitdiff
path: root/src/mem/ruby/network/simple/PerfectSwitch.hh
diff options
context:
space:
mode:
authorNilay Vaish <nilay@cs.wisc.edu>2015-09-12 16:16:03 -0500
committerNilay Vaish <nilay@cs.wisc.edu>2015-09-12 16:16:03 -0500
commit25cd13dbf1d6f7d306b40c7e2e3d7231b0c5eb04 (patch)
tree670ae38b6b7e1e70efb9c6b43c66ddd018c0f751 /src/mem/ruby/network/simple/PerfectSwitch.hh
parentf611d4f22e913633e884b0d87b4de52def6434f3 (diff)
downloadgem5-25cd13dbf1d6f7d306b40c7e2e3d7231b0c5eb04.tar.xz
ruby: simple network: store Switch* in PerfectSwitch and Throttle
There are two reasons for doing so: a. provide a source of clock to PerfectSwitch. A follow on patch removes sender and receiver pointers from MessageBuffer means that the object owning the buffer should have some way of providing timing info. b. schedule events. A follow on patch removes the consumer class. So the PerfectSwitch needs some EventManager object to schedule events on its own.
Diffstat (limited to 'src/mem/ruby/network/simple/PerfectSwitch.hh')
-rw-r--r--src/mem/ruby/network/simple/PerfectSwitch.hh3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/mem/ruby/network/simple/PerfectSwitch.hh b/src/mem/ruby/network/simple/PerfectSwitch.hh
index f55281d54..dddbdc9ba 100644
--- a/src/mem/ruby/network/simple/PerfectSwitch.hh
+++ b/src/mem/ruby/network/simple/PerfectSwitch.hh
@@ -86,7 +86,8 @@ class PerfectSwitch : public Consumer
void operateVnet(int vnet);
- SwitchID m_switch_id;
+ const SwitchID m_switch_id;
+ Switch * const m_switch;
// vector of queues from the components
std::vector<std::vector<MessageBuffer*> > m_in;