PerfectSwitch.hh (7454:3a3e8e8cce1b) PerfectSwitch.hh (7973:e5550966464a)
1/*
2 * Copyright (c) 1999-2008 Mark D. Hill and David A. Wood
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 55 unchanged lines hidden (view full) ---

64 const NetDest& routing_table_entry);
65 void clearRoutingTables();
66 void clearBuffers();
67 void reconfigureOutPort(const NetDest& routing_table_entry);
68 int getInLinks() const { return m_in.size(); }
69 int getOutLinks() const { return m_out.size(); }
70
71 void wakeup();
1/*
2 * Copyright (c) 1999-2008 Mark D. Hill and David A. Wood
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 55 unchanged lines hidden (view full) ---

64 const NetDest& routing_table_entry);
65 void clearRoutingTables();
66 void clearBuffers();
67 void reconfigureOutPort(const NetDest& routing_table_entry);
68 int getInLinks() const { return m_in.size(); }
69 int getOutLinks() const { return m_out.size(); }
70
71 void wakeup();
72 void storeEventInfo(int info);
72
73 void printStats(std::ostream& out) const;
74 void clearStats();
75 void printConfig(std::ostream& out) const;
76
77 void print(std::ostream& out) const;
78
79 private:

--- 7 unchanged lines hidden (view full) ---

87 std::vector<std::vector<MessageBuffer*> > m_in;
88 std::vector<std::vector<MessageBuffer*> > m_out;
89 std::vector<NetDest> m_routing_table;
90 std::vector<LinkOrder> m_link_order;
91 int m_virtual_networks;
92 int m_round_robin_start;
93 int m_wakeups_wo_switch;
94 SimpleNetwork* m_network_ptr;
73
74 void printStats(std::ostream& out) const;
75 void clearStats();
76 void printConfig(std::ostream& out) const;
77
78 void print(std::ostream& out) const;
79
80 private:

--- 7 unchanged lines hidden (view full) ---

88 std::vector<std::vector<MessageBuffer*> > m_in;
89 std::vector<std::vector<MessageBuffer*> > m_out;
90 std::vector<NetDest> m_routing_table;
91 std::vector<LinkOrder> m_link_order;
92 int m_virtual_networks;
93 int m_round_robin_start;
94 int m_wakeups_wo_switch;
95 SimpleNetwork* m_network_ptr;
96 std::vector<int> m_pending_message_count;
95};
96
97inline std::ostream&
98operator<<(std::ostream& out, const PerfectSwitch& obj)
99{
100 obj.print(out);
101 out << std::flush;
102 return out;
103}
104
105#endif // __MEM_RUBY_NETWORK_SIMPLE_PERFECTSWITCH_HH__
97};
98
99inline std::ostream&
100operator<<(std::ostream& out, const PerfectSwitch& obj)
101{
102 obj.print(out);
103 out << std::flush;
104 return out;
105}
106
107#endif // __MEM_RUBY_NETWORK_SIMPLE_PERFECTSWITCH_HH__