ATTPCROOT  0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
AtWeightedGaussianTrunc.h
Go to the documentation of this file.
1 #ifndef ATWEIGHTEDGAUSSIANTRUNC_H
2 #define ATWEIGHTEDGAUSSIANTRUNC_H
3 
4 #include "AtSample.h"
5 
6 #include <vector> // for vector
7 class AtHit;
8 
9 namespace RandomSample {
10 
17 public:
18  virtual std::vector<AtHit> SampleHits(int N) override;
19  virtual void SetHitsToSample(const std::vector<const AtHit *> &hits) override { fHits = &hits; }
20 
21 protected:
22  virtual std::vector<double> PDF(const AtHit &hit) override;
23 };
24 } // namespace RandomSample
25 #endif //#ifndef ATWEIGHTEDGAUSSIANTRUNC_H
RandomSample
Definition: AtSampleConsensus.h:26
RandomSample::AtSample::fHits
const std::vector< const AtHit * > * fHits
Definition: AtSample.h:38
RandomSample::AtWeightedGaussianTrunc::SampleHits
virtual std::vector< AtHit > SampleHits(int N) override
Sample hits (AtHit) from fHits.
Definition: AtWeightedGaussianTrunc.cxx:14
RandomSample::AtWeightedGaussianTrunc::PDF
virtual std::vector< double > PDF(const AtHit &hit) override
Definition: AtWeightedGaussianTrunc.cxx:57
RandomSample::AtWeightedGaussianTrunc::SetHitsToSample
virtual void SetHitsToSample(const std::vector< const AtHit * > &hits) override
Definition: AtWeightedGaussianTrunc.h:19
RandomSample::AtSample
Interface for randomly sampling AtHits.
Definition: AtSample.h:35
AtSample.h
RandomSample::AtWeightedGaussianTrunc
Uniformly sample a collection of AtHits.
Definition: AtWeightedGaussianTrunc.h:16
AtHit
Point in space with charge.
Definition: AtHit.h:27