|
gem5 [DEVELOP-FOR-25.0]
|
#include <etherswitch.hh>
Classes | |
| struct | EntryOrder |
Public Member Functions | |
| PortFifo (const std::string &name, int max) | |
| ~PortFifo () | |
| const std::string | name () |
| int | avail () const |
| EthPacketPtr | front () |
| bool | empty () const |
| unsigned | size () const |
| bool | push (EthPacketPtr ptr, unsigned senderId) |
| Push a packet into the fifo and sort the packets with same recv tick by port id. | |
| void | pop () |
| void | clear () |
| void | serialize (CheckpointOut &cp) const |
| Serialization stuff. | |
| void | unserialize (CheckpointIn &cp) |
| Unserialize an object. | |
Public Member Functions inherited from gem5::Serializable | |
| Serializable () | |
| virtual | ~Serializable () |
| void | serializeSection (CheckpointOut &cp, const char *name) const |
| Serialize an object into a new section. | |
| void | serializeSection (CheckpointOut &cp, const std::string &name) const |
| void | unserializeSection (CheckpointIn &cp, const char *name) |
| Unserialize an a child object. | |
| void | unserializeSection (CheckpointIn &cp, const std::string &name) |
Protected Attributes | |
| std::set< PortFifoEntry, EntryOrder > | fifo |
| const std::string | objName |
| const unsigned | _maxsize |
| unsigned | _size |
Additional Inherited Members | |
Static Public Member Functions inherited from gem5::Serializable | |
| static const std::string & | currentSection () |
| Gets the fully-qualified name of the active section. | |
| static void | generateCheckpointOut (const std::string &cpt_dir, std::ofstream &outstream) |
| Generate a checkpoint file so that the serialization can be routed to it. | |
Definition at line 122 of file etherswitch.hh.
|
inline |
|
inline |
Definition at line 145 of file etherswitch.hh.
|
inline |
Definition at line 153 of file etherswitch.hh.
References _maxsize, and _size.
Referenced by push().
| void gem5::EtherSwitch::Interface::PortFifo::clear | ( | ) |
Definition at line 119 of file etherswitch.cc.
|
inline |
|
inline |
Definition at line 155 of file etherswitch.hh.
References fifo.
|
inline |
| void gem5::EtherSwitch::Interface::PortFifo::pop | ( | ) |
Definition at line 107 of file etherswitch.cc.
| bool gem5::EtherSwitch::Interface::PortFifo::push | ( | EthPacketPtr | ptr, |
| unsigned | senderId ) |
Push a packet into the fifo and sort the packets with same recv tick by port id.
Definition at line 75 of file etherswitch.cc.
References _maxsize, _size, avail(), gem5::curTick(), DPRINTF, empty(), fifo, and warn.
|
virtual |
Serialization stuff.
Implements gem5::Serializable.
Definition at line 319 of file etherswitch.cc.
References _size, gem5::csprintf(), fifo, gem5::ArmISA::i, and SERIALIZE_SCALAR.
|
inline |
Definition at line 157 of file etherswitch.hh.
References _size.
|
virtual |
Unserialize an object.
Read an object's state from the current checkpoint section.
| cp | Checkpoint state |
Implements gem5::Serializable.
Definition at line 332 of file etherswitch.cc.
References _size, gem5::csprintf(), fifo, gem5::ArmISA::i, UNSERIALIZE_SCALAR, and gem5::Serializable::unserializeSection().
|
protected |
Definition at line 139 of file etherswitch.hh.
Referenced by avail(), PortFifo(), and push().
|
protected |
Definition at line 140 of file etherswitch.hh.
Referenced by avail(), clear(), empty(), pop(), PortFifo(), push(), serialize(), size(), and unserialize().
|
protected |
Definition at line 136 of file etherswitch.hh.
Referenced by clear(), front(), pop(), push(), serialize(), and unserialize().
|
protected |
Definition at line 138 of file etherswitch.hh.
Referenced by name(), and PortFifo().