port.cc (5314:e902f12a3af1) | port.cc (5476:758c2413765a) |
---|---|
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; --- 25 unchanged lines hidden (view full) --- 34 */ 35#include <cstring> 36 37#include "base/chunk_generator.hh" 38#include "base/trace.hh" 39#include "mem/mem_object.hh" 40#include "mem/port.hh" 41 | 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; --- 25 unchanged lines hidden (view full) --- 34 */ 35#include <cstring> 36 37#include "base/chunk_generator.hh" 38#include "base/trace.hh" 39#include "mem/mem_object.hh" 40#include "mem/port.hh" 41 |
42class defaultPeerPortClass: public Port | 42class DefaultPeerPort : public Port |
43{ 44 protected: 45 void blowUp() 46 { | 43{ 44 protected: 45 void blowUp() 46 { |
47 fatal("Unconnected port!"); | 47 fatal("%s: Unconnected port!", peer->name()); |
48 } 49 50 public: | 48 } 49 50 public: |
51 defaultPeerPortClass() : Port("default_port") 52 {} | 51 DefaultPeerPort() 52 : Port("default_port") 53 { } |
53 54 bool recvTiming(PacketPtr) 55 { 56 blowUp(); 57 return false; 58 } 59 60 Tick recvAtomic(PacketPtr) --- 18 unchanged lines hidden (view full) --- 79 return 0; 80 } 81 82 void getDeviceAddressRanges(AddrRangeList &, bool &) 83 { 84 blowUp(); 85 } 86 | 54 55 bool recvTiming(PacketPtr) 56 { 57 blowUp(); 58 return false; 59 } 60 61 Tick recvAtomic(PacketPtr) --- 18 unchanged lines hidden (view full) --- 80 return 0; 81 } 82 83 void getDeviceAddressRanges(AddrRangeList &, bool &) 84 { 85 blowUp(); 86 } 87 |
87 bool isDefaultPort() { return true; } | 88 bool isDefaultPort() const { return true; } 89}; |
88 | 90 |
89} defaultPeerPort; | 91DefaultPeerPort defaultPeerPort; |
90 | 92 |
91Port::Port() : peer(&defaultPeerPort), owner(NULL) | 93Port::Port() 94 : peer(&defaultPeerPort), owner(NULL) |
92{ 93} 94 | 95{ 96} 97 |
95Port::Port(const std::string &_name, MemObject *_owner) : 96 portName(_name), peer(&defaultPeerPort), owner(_owner) | 98Port::Port(const std::string &_name, MemObject *_owner) 99 : portName(_name), peer(&defaultPeerPort), owner(_owner) |
97{ 98} 99 | 100{ 101} 102 |
103Port::~Port() 104{ 105} 106 |
|
100void 101Port::setPeer(Port *port) 102{ 103 DPRINTF(Config, "setting peer to %s\n", port->name()); | 107void 108Port::setPeer(Port *port) 109{ 110 DPRINTF(Config, "setting peer to %s\n", port->name()); |
111 |
|
104 peer = port; 105} 106 107void 108Port::removeConn() 109{ 110 if (peer->getOwner()) 111 peer->getOwner()->deletePortRefs(peer); --- 53 unchanged lines hidden --- | 112 peer = port; 113} 114 115void 116Port::removeConn() 117{ 118 if (peer->getOwner()) 119 peer->getOwner()->deletePortRefs(peer); --- 53 unchanged lines hidden --- |