00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef UWBIREDSYNCONADDRESS_H_
00010 #define UWBIREDSYNCONADDRESS_H_
00011
00012 #include <vector>
00013 #include <map>
00014 #include <math.h>
00015
00016 #include "Mapping.h"
00017 #include "AirFrame_m.h"
00018 #include "MacPkt_m.h"
00019 #include "Decider.h"
00020 #include "DeciderUWBIRED.h"
00021
00022 using namespace std;
00023
00024 class PhyLayerUWBIR;
00025
00058 class DeciderUWBIREDSyncOnAddress: public DeciderUWBIRED {
00059
00060 public:
00061 DeciderUWBIREDSyncOnAddress(DeciderToPhyInterface* iface,
00062 PhyLayerUWBIR* _uwbiface,
00063 double _syncThreshold, bool _syncAlwaysSucceeds, bool _stats,
00064 bool _trace, int _addr, bool alwaysFailOnDataInterference);
00065
00066 virtual bool attemptSync(Signal* signal);
00067
00068 virtual simtime_t processSignal(AirFrame* frame);
00069
00070 protected:
00071 AirFrame* currFrame;
00072 int syncAddress;
00073 };
00074
00075 #endif