00001 /******************************************************************* 00002 * File: Probability.h 00003 * Description: This is base class for various probability 00004 * distribution generator classes. 00005 * Author: Subhasis Ray 00006 * E-mail: ray.subhasis@gmail.com 00007 * Created: 2007-10-28 13:30:41 00008 ********************************************************************/ 00009 /********************************************************************** 00010 ** This program is part of 'MOOSE', the 00011 ** Messaging Object Oriented Simulation Environment, 00012 ** also known as GENESIS 3 base code. 00013 ** copyright (C) 2003-2005 Upinder S. Bhalla. and NCBS 00014 ** It is made available under the terms of the 00015 ** GNU General Public License version 2 00016 ** See the file COPYING.LIB for the full notice. 00017 **********************************************************************/ 00018 00019 #ifndef _PROBABILITY_H 00020 #define _PROBABILITY_H 00021 00022 00026 class Probability 00027 { 00028 public: 00029 virtual ~Probability(){}; 00030 00031 virtual double getMean() const =0; 00032 virtual double getVariance()const =0; 00033 virtual double getNextSample()const =0; 00034 00035 private: 00036 // long double mean_; // TODO : do we really need this? 00037 // long double variance_;// TODO : do we really need this? 00038 }; 00039 00040 #endif