DeciderUWBIREDSyncOnAddress.cc

00001 #include "DeciderUWBIREDSyncOnAddress.h"
00002 #include "DeciderUWBIRED.h"
00003 
00004 DeciderUWBIREDSyncOnAddress::DeciderUWBIREDSyncOnAddress(DeciderToPhyInterface* iface,
00005         PhyLayerUWBIR* _uwbiface,
00006         double _syncThreshold, bool _syncAlwaysSucceeds, bool _stats,
00007         bool _trace, int _addr, bool alwaysFailOnDataInterference) :
00008           DeciderUWBIRED(iface, _uwbiface,
00009             _syncThreshold, _syncAlwaysSucceeds, _stats, _trace, alwaysFailOnDataInterference),
00010             syncAddress(_addr) {
00011 
00012 };
00013 
00014 
00015 bool DeciderUWBIREDSyncOnAddress::attemptSync(Signal* s) {
00016   cMessage* encaps = currFrame->getEncapsulatedPacket();
00017   assert(static_cast<MacPkt*>(encaps));
00018   MacPkt* macPkt = static_cast<MacPkt*>(encaps);
00019 
00020   return (macPkt->getSrcAddr()==syncAddress);
00021 };
00022 
00023 simtime_t DeciderUWBIREDSyncOnAddress::processSignal(AirFrame* frame) {
00024   currFrame = frame;
00025   return DeciderUWBIRED::processSignal(frame);
00026 };
00027 
00028