1/* 2 * Copyright (c) 2015 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 39 unchanged lines hidden (view full) --- 48 * 49 */ 50#ifndef __DEV_DIST_ETHERLINK_HH__ 51#define __DEV_DIST_ETHERLINK_HH__ 52 53#include <iostream> 54 55#include "dev/net/etherlink.hh" |
56#include "params/DistEtherLink.hh" 57 58class DistIface; 59class EthPacketData; 60 61/** 62 * Model for a fixed bandwidth full duplex ethernet link. 63 */ |
64class DistEtherLink : public SimObject |
65{ 66 protected: 67 class LocalIface; 68 69 /** 70 * Model base class for a single uni-directional link. 71 * 72 * The link will encapsulate and transfer Ethernet packets to/from --- 145 unchanged lines hidden (view full) --- 218 ~DistEtherLink(); 219 220 const Params * 221 params() const 222 { 223 return dynamic_cast<const Params *>(_params); 224 } 225 |
226 Port &getPort(const std::string &if_name, 227 PortID idx=InvalidPortID) override; |
228 229 virtual void init() override; 230 virtual void startup() override; 231 232 void serialize(CheckpointOut &cp) const override; 233 void unserialize(CheckpointIn &cp) override; 234}; 235 236#endif // __DEV_DIST_ETHERLINK_HH__ |