etherbus.hh (13766:4ecebdee8da4) etherbus.hh (13784:1941dc118243)
1/*
2 * Copyright (c) 2002-2005 The Regents of The University of Michigan
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;

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

30
31/* @file
32 * Device module for modelling an ethernet hub
33 */
34
35#ifndef __DEV_NET_ETHERBUS_HH__
36#define __DEV_NET_ETHERBUS_HH__
37
1/*
2 * Copyright (c) 2002-2005 The Regents of The University of Michigan
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;

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

30
31/* @file
32 * Device module for modelling an ethernet hub
33 */
34
35#ifndef __DEV_NET_ETHERBUS_HH__
36#define __DEV_NET_ETHERBUS_HH__
37
38#include "dev/net/etherobject.hh"
39#include "dev/net/etherpkt.hh"
40#include "params/EtherBus.hh"
41#include "sim/eventq.hh"
42#include "sim/sim_object.hh"
43
44class EtherDump;
45class EtherInt;
38#include "dev/net/etherpkt.hh"
39#include "params/EtherBus.hh"
40#include "sim/eventq.hh"
41#include "sim/sim_object.hh"
42
43class EtherDump;
44class EtherInt;
46class EtherBus : public SimObject, public EtherObject
45class EtherBus : public SimObject
47{
48 protected:
49 typedef std::list<EtherInt *> devlist_t;
50 devlist_t devlist;
51 double ticksPerByte;
52 bool loopback;
53
54 protected:

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

67 {
68 return dynamic_cast<const Params *>(_params);
69 }
70
71 void txDone();
72 void reg(EtherInt *dev);
73 bool busy() const { return (bool)packet; }
74 bool send(EtherInt *sender, EthPacketPtr &packet);
46{
47 protected:
48 typedef std::list<EtherInt *> devlist_t;
49 devlist_t devlist;
50 double ticksPerByte;
51 bool loopback;
52
53 protected:

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

66 {
67 return dynamic_cast<const Params *>(_params);
68 }
69
70 void txDone();
71 void reg(EtherInt *dev);
72 bool busy() const { return (bool)packet; }
73 bool send(EtherInt *sender, EthPacketPtr &packet);
75 EtherInt *getEthPort(const std::string &if_name, int idx) override;
74 Port &getPort(const std::string &if_name,
75 PortID idx=InvalidPortID) override;
76};
77
78#endif // __DEV_NET_ETHERBUS_HH__
76};
77
78#endif // __DEV_NET_ETHERBUS_HH__