![]() |
User Manual, Developers Guide and API Documentation |
![]() |
00001 /****************************************************************************** 00002 * Glue * 00003 * __________________________________________________________________________ * 00004 * * 00005 * Copyright (C) 2005-2006 * 00006 * Lehrstuhl fuer Kommunikationsnetze (ComNets) * 00007 * Kopernikusstr. 16, D-52074 Aachen, Germany * 00008 * phone: ++49-241-80-27910 (phone), fax: ++49-241-80-22242 * 00009 * email: wns@comnets.rwth-aachen.de * 00010 * www: http://wns.comnets.rwth-aachen.de * 00011 ******************************************************************************/ 00012 00013 #ifndef GLUE_CONVERGENCE_LOWER_HPP 00014 #define GLUE_CONVERGENCE_LOWER_HPP 00015 00016 #include <GLUE/Component.hpp> 00017 #include <GLUE/BERProvider.hpp> 00018 00019 #include <WNS/ldk/CommandTypeSpecifier.hpp> 00020 #include <WNS/ldk/HasReceptor.hpp> 00021 #include <WNS/ldk/HasConnector.hpp> 00022 #include <WNS/ldk/HasDeliverer.hpp> 00023 #include <WNS/ldk/ErrorRateProviderInterface.hpp> 00024 00025 namespace glue { namespace convergence { 00026 00027 class LowerCommand : 00028 public wns::ldk::Command, 00029 virtual public wns::ldk::ErrorRateProviderInterface 00030 { 00031 friend class Lower; 00032 public: 00033 double getErrorRate() const 00034 { 00035 return local.per; 00036 } 00037 00038 struct { 00039 double per; 00040 } local; 00041 struct {} peer; 00042 struct { 00043 wns::simulator::Time txStartTime; 00044 StationType senderType; 00045 } magic; 00046 }; 00047 00048 class Lower : 00049 virtual public wns::ldk::FunctionalUnit, 00050 public glue::BERProvider 00051 { 00052 public: 00053 virtual void 00054 setNotificationService(wns::service::Service* phy) = 0; 00055 00056 virtual wns::service::Service* 00057 getNotificationService() const = 0; 00058 00059 virtual void 00060 setDataTransmissionService(wns::service::Service* phy) = 0; 00061 00062 virtual wns::service::Service* 00063 getDataTransmissionService() const = 0; 00064 00065 virtual void 00066 setMACAddress(const wns::service::dll::UnicastAddress& address) = 0; 00067 }; 00068 00069 00070 } // convergence 00071 } // glue 00072 00073 00074 #endif // NOT defined GLUE_CONVERGENCE_LOWER_HPP 00075 00076
1.5.5