21#include <TLorentzVector.h>
27#include "Framework/EventGen/GFluxI.h"
28#include "Framework/ParticleData/PDGCodeList.h"
29#include "Tools/Flux/GFluxExposureI.h"
34 public genie::flux::GFluxExposureI {
42 explicit ShipFluxDriver(std::string
const& path,
bool cycle =
false);
50 double Weight()
override {
return weight_; }
51 TLorentzVector
const&
Momentum()
override {
return p4_; }
52 TLorentzVector
const&
Position()
override {
return x4_; }
53 bool End()
override {
return end_; }
54 long int Index()
override {
return index_; }
55 void Clear(Option_t* opt)
override;
66 double pot()
const {
return pot_; }
67 std::uint64_t
entries()
const {
return n_entries_; }
81 std::unique_ptr<Reader> reader_;
85 bool gen_weighted_ =
true;
89 double max_energy_ = 0.0;
90 std::uint64_t n_entries_ = 0;
91 double total_weight_ = 0.0;
100 long int n_used_ = 0;
101 double used_weight_ = 0.0;
103 genie::PDGCodeList pdg_list_;
104 bool pdg_list_built_ =
false;
Definition ship_flux_driver.hpp:34
std::uint64_t entries() const
Definition ship_flux_driver.hpp:67
double GetTotalExposure() const override
Definition ship_flux_driver.cpp:213
bool End() override
Definition ship_flux_driver.hpp:53
bool GenerateNext() override
Definition ship_flux_driver.cpp:152
void GenerateWeighted(bool gen_weighted) override
Definition ship_flux_driver.cpp:204
TLorentzVector const & Position() override
Definition ship_flux_driver.hpp:52
long int NFluxNeutrinos() const override
Definition ship_flux_driver.hpp:63
double pot() const
Definition ship_flux_driver.hpp:66
genie::PDGCodeList const & FluxParticles() override
Definition ship_flux_driver.cpp:127
void Clear(Option_t *opt) override
Definition ship_flux_driver.cpp:193
TLorentzVector const & Momentum() override
Definition ship_flux_driver.hpp:51
double MaxEnergy() override
Definition ship_flux_driver.hpp:47
int PdgCode() override
Definition ship_flux_driver.hpp:49
double Weight() override
Definition ship_flux_driver.hpp:50
Ray peek_first_ray()
Definition ship_flux_driver.cpp:180
~ShipFluxDriver() override
long int Index() override
Definition ship_flux_driver.hpp:54
Definition genie_config.hpp:22
Definition ship_flux_driver.hpp:72
int pdg
Definition ship_flux_driver.hpp:73
TLorentzVector position
Definition ship_flux_driver.hpp:74
TLorentzVector momentum
Definition ship_flux_driver.hpp:75
Definition ship_flux_driver.cpp:33