Decider80211MultiChannel.h

00001 /*
00002  * Decider80211MultiChannel.h
00003  *
00004  *  Created on: Mar 22, 2011
00005  *      Author: karl
00006  */
00007 
00008 #ifndef DECIDER80211MULTICHANNEL_H_
00009 #define DECIDER80211MULTICHANNEL_H_
00010 
00011 
00012 #include "Decider80211Battery.h"
00013 
00029 class Decider80211MultiChannel: public Decider80211Battery
00030 {
00031 protected:
00032   int currentChannel;
00033 
00034 protected:
00044   virtual void getChannelInfo(simtime_t start, simtime_t end,
00045                 AirFrameVector& out);
00046 
00055   virtual simtime_t processNewSignal(AirFrame* frame);
00056 
00057 
00067   virtual DeciderResult* checkIfSignalOk(AirFrame* frame);
00068 
00069 public:
00082   Decider80211MultiChannel(DeciderToPhyInterface* phy,
00083             double threshold,
00084             double sensitivity,
00085             double decodingCurrentDelta,
00086             int currentChannel,
00087             int myIndex = -1,
00088             bool debug = false);
00089 
00090   virtual ~Decider80211MultiChannel();
00091 
00102   virtual void channelChanged(int newChannel);
00103 
00104 
00105 };
00106 
00107 #endif /* DECIDER80211MULTICHANNEL_H_ */