@@ -142,16 +142,10 @@ MacNodeId Binder::registerNode(cModule *nodeModule, RanNodeType type, MacNodeId
142142{
143143 Enter_Method_Silent (" registerNode" );
144144
145- MacNodeId nodeId = NODEID_NONE;
146- switch (type) {
147- case UE:
148- nodeId = MacNodeId (isNr ? macNodeIdCounterNrUe_++ : macNodeIdCounterUe_++);
149- break ;
150- case ENODEB: case GNODEB:
151- nodeId = MacNodeId (macNodeIdCounterEnb_++);
152- break ;
153- default : ASSERT (false );
154- }
145+ ASSERT (type == UE || type == ENODEB || type == GNODEB);
146+ MacNodeId nodeId = type == UE ?
147+ MacNodeId (isNr ? macNodeIdCounterNrUe_++ : macNodeIdCounterUe_++) :
148+ MacNodeId (macNodeIdCounterEnb_++); // eNB/gNB
155149
156150 EV << " Binder : Assigning to module " << nodeModule->getName ()
157151 << " with module id " << nodeModule->getId () << " and MacNodeId " << nodeId
@@ -171,8 +165,7 @@ MacNodeId Binder::registerNode(cModule *nodeModule, RanNodeType type, MacNodeId
171165 }
172166 else if (type == ENODEB || type == GNODEB) {
173167 nodeModule->par (" macCellId" ) = num (nodeId);
174- // TODO if (masterId != NODEID_NONE)
175- registerMasterNode (masterId, nodeId);
168+ registerMasterNode (masterId, nodeId); // note: even if masterId == NODEID_NONE!
176169 }
177170 return nodeId;
178171}
@@ -263,12 +256,9 @@ void Binder::registerMasterNode(MacNodeId masterId, MacNodeId slaveId)
263256 ASSERT (getNodeTypeById (slaveId) == ENODEB);
264257 ASSERT (masterId != slaveId);
265258
266- if (masterId == NODEID_NONE)
267- masterId = slaveId;
268-
269259 if (secondaryNodeToMasterNodeOrSelf_.size () <= num (slaveId))
270260 secondaryNodeToMasterNodeOrSelf_.resize (num (slaveId) + 1 );
271- secondaryNodeToMasterNodeOrSelf_[num (slaveId)] = masterId;
261+ secondaryNodeToMasterNodeOrSelf_[num (slaveId)] = ( masterId != NODEID_NONE) ? masterId : slaveId; // the "or self" bit
272262}
273263
274264inline ostream& operator <<(ostream& os, const L3Address& addr) { return os << addr.str (); }
0 commit comments