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