diff --git a/.nedfolders b/.nedfolders index d2376c8dc2468667345e78235fc8242630557010..b490062879a716f7dafc4481055d6b3b5cd05b14 100644 --- a/.nedfolders +++ b/.nedfolders @@ -3,43 +3,50 @@ src -inet.examples.mpls -inet.applications.voiptool -inet.world.httptools --inet.nodes.xmipv6 -inet.applications.dhcp -inet.applications.httptools --inet.networklayer.rsvp_te -inet.transport.tcp_lwip -inet.networklayer.autorouting.ipv6 -inet.transport.tcp_nsc +-inet.examples.inet +-inet.examples.httptools.direct +-inet.examples.diffserv +-inet.networklayer.xmipv6 +-inet.examples.traci_launchd +-inet.examples.sctp +-inet.examples.httptools.socket +-inet.examples.manetrouting +-inet.examples.emulation +-inet.networklayer.ted +-inet.nodes.ipv6 +-inet.networklayer.manetrouting +-inet.networklayer.icmpv6 +-inet.examples.adhoc +-inet.nodes.xmipv6 +-inet.networklayer.rsvp_te -inet.networklayer.diffserv -inet.transport.rtp --inet.examples.dhcp -inet.examples.mobileipv6 +-inet.examples.dhcp -inet.nodes.mpls -inet.world.traci --inet.examples.httptools.direct -inet.examples.traci +-inet.examples.ethernet -inet.examples.ipv6 --inet.examples.diffserv --inet.nodes.bgp -inet.examples.ospfv2 --inet.networklayer.xmipv6 --inet.examples.traci_launchd +-inet.nodes.bgp -inet.examples.rtp -inet.networklayer.ospfv2 --inet.examples.manetrouting --inet.examples.httptools.socket +-inet.examples.mobility -inet.networklayer.bgpv4 -inet.applications.traci -inet.examples.voiptool -inet.networklayer.ipv6tunneling --inet.networklayer.ted -inet.networklayer.ipv6 -inet.networklayer.ldp -inet.nodes.httptools -inet.networklayer.mpls -inet.examples.bgpv4 --inet.nodes.ipv6 --inet.networklayer.manetrouting -inet.applications.rtpapp --inet.networklayer.icmpv6 -inet.nodes.ospfv2 +-inet.examples.wireless diff --git a/src/linklayer/lte/phy/PHY.cc b/src/linklayer/lte/phy/PHY.cc index fe5aaf6a7b58b9f743514d7901e988341ddd6340..50562e3246cf59f8dfd956c7e3cdab3381d9a791 100644 --- a/src/linklayer/lte/phy/PHY.cc +++ b/src/linklayer/lte/phy/PHY.cc @@ -106,6 +106,10 @@ const char *PHY::eventName(int event) { #undef CASE } +bool PHY::operator<(const reg &l, const reg &r) { + +} + void PHY::stateEntered(int category, const cPolymorphic *details) { switch(fsm.getState()) { case IDLE: { @@ -149,11 +153,11 @@ void PHY::stateEntered(int category, const cPolymorphic *details) { dlSubframe[i] = NULL; dlBuffer = new PHYFramePtr*[nDLsymb * 2]; - for (unsigned char l = 0; l < nDLsymb * 2; l++) + for (unsigned char l = 0; l < nDLsymb * 2; l++) { dlBuffer[l] = new PHYFramePtr[nRBsc * nDLrb]; - for (unsigned char l = 0; l < nDLsymb * 2; l++) for (unsigned short k = 0; k < nRBsc * nDLrb; k++) dlBuffer[l][k] = NULL; + } this->cancelEvent(symbolTimer); this->scheduleAt(simTime(), symbolTimer); diff --git a/src/linklayer/lte/phy/PHY.h b/src/linklayer/lte/phy/PHY.h index ce5d744ebb848f62ff08b55dfed8a27a932294bf..a68bae7c66d4a900232ceca1826c86b2de53e622 100644 --- a/src/linklayer/lte/phy/PHY.h +++ b/src/linklayer/lte/phy/PHY.h @@ -63,7 +63,15 @@ protected: typedef PHYFrame *PHYFramePtr; PHYFramePtr **dlBuffer; // frame[nDLsymb * 2][nRBsc * nDLrb] - typedef unsigned char reg[k][l]; + struct reg { + unsigned short k; + unsigned char l; + }; + + bool operator<(const reg &l, const reg &r); + + typedef std::map REGroups; + REGroups regs; cFSM fsm;