![]() |
User Manual, Developers Guide and API Documentation |
![]() |
00001 /******************************************************************************* 00002 * This file is part of openWNS (open Wireless Network Simulator) 00003 * _____________________________________________________________________________ 00004 * 00005 * Copyright (C) 2004-2007 00006 * Chair of Communication Networks (ComNets) 00007 * Kopernikusstr. 16, D-52074 Aachen, Germany 00008 * phone: ++49-241-80-27910, 00009 * fax: ++49-241-80-22242 00010 * email: info@openwns.org 00011 * www: http://www.openwns.org 00012 * _____________________________________________________________________________ 00013 * 00014 * openWNS is free software; you can redistribute it and/or modify it under the 00015 * terms of the GNU Lesser General Public License version 2 as published by the 00016 * Free Software Foundation; 00017 * 00018 * openWNS is distributed in the hope that it will be useful, but WITHOUT ANY 00019 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 00020 * A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more 00021 * details. 00022 * 00023 * You should have received a copy of the GNU Lesser General Public License 00024 * along with this program. If not, see <http://www.gnu.org/licenses/>. 00025 * 00026 ******************************************************************************/ 00027 00028 #include <WNS/distribution/NegExp.hpp> 00029 00030 using namespace wns::distribution; 00031 00032 STATIC_FACTORY_REGISTER_WITH_CREATOR( 00033 NegExp, 00034 Distribution, 00035 "NegExp", 00036 wns::PyConfigViewCreator); 00037 STATIC_FACTORY_REGISTER_WITH_CREATOR( 00038 NegExp, 00039 Distribution, 00040 "NegExp", 00041 wns::distribution::RNGConfigCreator); 00042 00043 NegExp::NegExp(const double mean, wns::rng::RNGen* rng) : 00044 Distribution(rng), 00045 mean_(mean), 00046 dis_(getRNG(), NegExpDist::distribution_type(1.0 / mean_)) 00047 { 00048 } 00049 00050 NegExp::NegExp(const pyconfig::View& config) : 00051 Distribution(), 00052 mean_(config.get<double>("mean")), 00053 dis_(getRNG(), NegExpDist::distribution_type(1.0 / mean_)) 00054 { 00055 } 00056 00057 NegExp::NegExp(wns::rng::RNGen* rng, const pyconfig::View& config) : 00058 Distribution(rng), 00059 mean_(config.get<double>("mean")), 00060 dis_(getRNG(), NegExpDist::distribution_type(1.0 / mean_)) 00061 { 00062 } 00063 00064 NegExp::~NegExp() 00065 { 00066 } 00067 00068 00069 double 00070 NegExp::operator()() 00071 { 00072 return dis_(); 00073 } 00074 00075 double 00076 NegExp::getMean() const 00077 { 00078 return mean_; 00079 } 00080 00081 std::string 00082 NegExp::paramString() const 00083 { 00084 std::ostringstream tmp; 00085 tmp << "NegExp(mean=" << mean_ << ")"; 00086 return tmp.str(); 00087 } 00088 00089 /* 00090 Local Variables: 00091 mode: c++ 00092 fill-column: 80 00093 c-basic-offset: 8 00094 c-comment-only-line-offset: 0 00095 c-tab-always-indent: t 00096 indent-tabs-mode: t 00097 tab-width: 8 00098 End: 00099 */ 00100
1.5.5