//____________________________________________________________________________ /*! \class GGenerateEventExternal \brief ......... \author ........... ............ \created May 2, 2022 */ //____________________________________________________________________________ #ifdef _KM3NET_ENABLED__ // presently compiled only for km3net users #ifndef _GGENERATEEVENTEXTERNAL__ #define _GGENERATEEVENTEXTERNAL__ #include #include #include #include #include #include #include #include #include "SeaEvent/GBinParam.h" #include "SeaEvent/GSeaEvent.h" #include "SeaNuDrivers/GGenerateEvent.h" using namespace std; class GGenerateEventExternal: public GGenerateEvent{ public : GGenerateEventExternal(GenParam * GenPar); ~GGenerateEventExternal(); vector GetInterFinalTracks(void); void Initialize (void); void Configure (int NTot); double GlobProbScale (void){return 1.;}; void SetGeometry (string RootGeomFile); TLorentzVector GetVertex (void); double GetGlobalGenWeight (void){return fGenPar->GlobalGenWeight;}; void FillSeaEvent (GSeaEvent * SeaEvent); void ComputeWeights (GSeaEvent * SeaEvt); void InitGenBin (double Emin, double Emax, double RL, double RT, double X0, double Y0, double Z0); double GetNFluxNeutrinos (void); void GenerateEvent (void); void WriteNative (GSeaEvent * SeaEvt); void CleanEvent (void); void CalcXSecWater (void); map CalcXsecTot (map MediaComp); vector GetGeneratorTracks (void); protected: }; #endif // _GGENERATEEVENTEXTERNAL__ #endif // _KM3NET_ENABLED__