00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef MEDIUM_INDICATION_H
00021 #define MEDIUM_INDICATION_H
00022
00023 #include <omnetpp.h>
00024 #include <Blackboard.h>
00025 #include <sstream>
00026
00036 class MediumIndication : public BBItem
00037 {
00038 BBITEM_METAINFO(BBItem);
00039
00040 public:
00042 enum States {
00043 IDLE,
00044 BUSY
00045 };
00046
00047 protected:
00048 States state;
00049
00050 public:
00052 MediumIndication(States s=IDLE) : BBItem(), state(s) {
00053 };
00054
00056 States getState() const {
00057 return state;
00058 }
00059
00061 void setState(States s) {
00062 state = s;
00063 }
00064
00066 std::string info() const {
00067 std::ostringstream ost;
00068 ost << " medium is ";
00069 if(state == IDLE) {
00070 ost << "idle";
00071 }
00072 else {
00073 ost << "busy";
00074 }
00075 return ost.str();
00076 }
00077 };
00078
00079
00080 #endif