/* -*- mode:c++; coding: koi8-r -*- */

#ifndef __DiscreteVariation_hpp__
#define __DiscreteVariation_hpp__

/* $Id: DiscreteVariation.hpp,v 1.1 2003/04/14 20:43:30 cher Exp $ */
/* Copyright (C) 2003 Alexander Chernov <cher@unicorn.cmc.msu.ru> */

/*
 This library is free software; you can redistribute it and/or
 modify it under the terms of the GNU Lesser General Public
 License as published by the Free Software Foundation; either
 version 2 of the License, or (at your option) any later version.

 This library is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 Lesser General Public License for more details.

 See the `COPYING' file for the full terms and conditions.
*/

#include "Random.hpp"

class DiscreteVariation
{
  Random *rnd;
  int n;
  double *f;
  int *v;

public:
  DiscreteVariation(Random *, int, int, double const *) throw (BadArgsError);
  DiscreteVariation(Random *, int, int const *, double const *) throw (BadArgsError);
  ~DiscreteVariation() throw ();
  int get() throw ();
};

#endif /* __DiscreteVariation_hpp__ */

/*
 * Local variables:
 *  compile-command: "make -C .."
 *  c++-font-lock-extra-types: ("[A-Z]\\sw*[a-z]\\sw*")
 * End:
 */
