DummyRoute.h

00001 /***************************************************************************
00002  * file:        DummyRoute.h
00003  *
00004  * author:      Jerome Rousselot
00005  *
00006  * copyright:   (C) 2009 CSEM SA, Neuchatel, Switzerland.
00007  *
00008  * description: Placeholder module that simply "translates" netwControlInfo to macControlInfo
00009  *
00010  **************************************************************************/
00011 
00012 #ifndef dummyroute_h
00013 #define dummyroute_h
00014 
00015 #include <omnetpp.h>
00016 
00017 //#include <fstream>
00018 #include "BaseLayer.h"
00019 #include "NetwPkt_m.h"
00020 #include "MacPkt_m.h"
00021 #include "BaseMacLayer.h"
00022 #include "SimTracer.h"
00023 #include "NetwControlInfo.h"
00024 #include "BaseMobility.h"
00025 #include "BaseNetwLayer.h"
00026 
00027 #include <map>
00028 #include <list>
00029 #include <math.h>
00030 
00031 using namespace std;
00032 
00040 class DummyRoute : public BaseNetwLayer
00041 {
00042 public:
00044     virtual void initialize(int);
00045     virtual void finish();
00046 
00047 protected:
00048 
00049     bool stats, trace;
00050 
00051     int networkID;  // the network to which we belong
00052 
00054     virtual void handleUpperMsg(cMessage* msg);
00055 
00057     virtual void handleLowerMsg(cMessage* msg);
00058 
00060     virtual void handleSelfMsg(cMessage* msg) { };
00061 
00063     virtual void handleLowerControl(cMessage* msg);
00064 
00065     virtual void handleUpperControl(cMessage* msg) { delete msg; }
00066 
00067     NetwPkt* encapsMsg(cPacket *appPkt);
00068 
00070     cMessage* decapsMsg(NetwPkt *msg);
00071 
00072 };
00073 
00074 #endif