Simpact Cyan
Population based event driven simulation using mNRM
discretedistribution2d.h
1 #ifndef DISCRETEDISTRIBUTION2D_H
2 
3 #define DISCRETEDISTRIBUTION2D_H
4 
6 #include "discretedistributionfast.h"
7 #include <vector>
8 
9 class TIFFDensityFile;
10 
11 class DiscreteDistribution2D : public ProbabilityDistribution2D
12 {
13 public:
14  DiscreteDistribution2D(double xOffset, double yOffset, double xSize, double ySize,
15  const TIFFDensityFile &density, GslRandomNumberGenerator *pRngGen);
16  ~DiscreteDistribution2D();
17 
18  Point2D pickPoint() const;
19 private:
20  DiscreteDistributionFast *m_pMarginalYDist;
21  std::vector<DiscreteDistributionFast *> m_conditionalXDists;
22 };
23 
24 #endif // DISCRETEDISTRIBUTION2D_H
virtual Point2D pickPoint() const =0
Pick a point according to a specific distrubution, specified in a subclass of ProbabilityDistribution...
This class allows you to generate random numbers, and uses the GNU Scientific Library for this...
Definition: gslrandomnumbergenerator.h:16
Abstract base class for 2D probability distribution implementations so that they can be used intercha...
Definition: probabilitydistribution2d.h:23