![]() |
User Manual, Developers Guide and API Documentation |
![]() |
00001 /****************************************************************************** 00002 * WiMeMac * 00003 * This file is part of openWNS (open Wireless Network Simulator) 00004 * _____________________________________________________________________________ 00005 * 00006 * Copyright (C) 2004-2011 00007 * Chair of Communication Networks (ComNets) 00008 * Kopernikusstr. 5, D-52074 Aachen, Germany 00009 * phone: ++49-241-80-27910, 00010 * fax: ++49-241-80-22242 00011 * email: info@openwns.org 00012 * www: http://www.openwns.org 00013 * _____________________________________________________________________________ 00014 * 00015 * openWNS is free software; you can redistribute it and/or modify it under the 00016 * terms of the GNU Lesser General Public License version 2 as published by the 00017 * Free Software Foundation; 00018 * 00019 * openWNS is distributed in the hope that it will be useful, but WITHOUT ANY 00020 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 00021 * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more 00022 * details. 00023 * 00024 * You should have received a copy of the GNU Lesser General Public License 00025 * along with this program. If not, see <http://www.gnu.org/licenses/>. 00026 * 00027 ******************************************************************************/ 00028 00029 #ifndef WIMEMAC_PHYUSER_COMMAND 00030 #define WIMEMAC_PHYUSER_COMMAND 00031 00032 #include <functional> 00033 00034 #include <WIMEMAC/convergence/OFDMAAccessFunc.hpp> 00035 00036 #include <WNS/ldk/Command.hpp> 00037 00038 namespace wimemac { namespace convergence { 00039 class PhyUser; 00040 00041 class PhyUserCommand : 00042 public wns::ldk::Command 00043 { 00044 public: 00045 struct { 00046 wns::Power rxPower; 00047 wns::Power interference; 00048 00049 std::auto_ptr<OFDMAAccessFunc> pAFunc; 00050 00051 } local; 00052 00053 struct {} peer; 00054 00055 struct {} magic; 00056 00057 PhyUserCommand() 00058 { 00059 } 00060 00061 // copy operator 00062 PhyUserCommand(const PhyUserCommand& other) : 00063 wns::ldk::Command() 00064 { 00065 local.rxPower = other.local.rxPower; 00066 local.interference = other.local.interference; 00067 00068 if (other.local.pAFunc.get()) 00069 local.pAFunc.reset(dynamic_cast<wimemac::convergence::OFDMAAccessFunc*>(other.local.pAFunc->clone())); 00070 } 00071 }; 00072 } // convergence 00073 } // wimemac 00074 00075 #endif // WIMEMAC_PHYUSER_COMMAND 00076
1.5.5