#ifndef __JRECONSTRUCTION__JSHOWERPARAMETERS__ #define __JRECONSTRUCTION__JSHOWERPARAMETERS__ #include #include #include "JReconstruction/JEvt.hh" #include "JReconstruction/JShowerPrefitParameters_t.hh" #include "JReconstruction/JShowerPointSimplexParameters_t.hh" #include "JReconstruction/JShowerPositionFitParameters_t.hh" #include "JReconstruction/JShowerEnergyPrefitParameters_t.hh" #include "JReconstruction/JShowerDirectionPrefitParameters_t.hh" #include "JReconstruction/JShowerFitParameters_t.hh" #include "JReconstruction/JShowerBjorkenYParameters_t.hh" #include "JROOT/JRoot.hh" #include #include /** * \author adomi */ namespace JRECONSTRUCTION { /** * Shower reconstruction parameters. */ struct JShowerParameters: public TObject { /** * Default constructor. */ JShowerParameters() { this->reset(); } /** * Virtual destructor. */ virtual ~JShowerParameters() {} /** * Reset fit parameters. */ void reset() { prefit.reset(); pointsimplex.reset(); positionfit.reset(); energyprefit.reset(); directionprefit.reset(); showerfit.reset(); bjyfit.reset(); } inline operator JShowerPrefitParameters_t() const {return prefit;} //!< JShowerPrefitParameters_t parameters inline operator JShowerPointSimplexParameters_t() const {return pointsimplex;} //!< JShowerPointSimplexParameters_t parameetrs inline operator JShowerPositionFitParameters_t() const {return positionfit;} //!< JShowerPositionFitParameters_t parameters inline operator JShowerEnergyPrefitParameters_t() const {return energyprefit;} //!< JShowerEnergyPrefitParameters_t parameters inline operator JShowerDirectionPrefitParameters_t() const {return directionprefit;} //!< JShowerEnergyPrefitParameters_t parameters inline operator JShowerFitParameters_t() const {return showerfit;} //!< JShowerFitParameters_t parameters inline operator JShowerBjorkenYParameters_t() const {return bjyfit;} //!< JShowerFitParameters_t parameters /** * Equality * * \param parameters fit parameters * \return true if equals; else false */ bool equals(const JShowerParameters¶meters) const { return (prefit .equals(parameters) && pointsimplex.equals(parameters) && positionfit .equals(parameters) && energyprefit.equals(parameters) && directionprefit.equals(parameters) && showerfit.equals(parameters) && bjyfit.equals(parameters)); } JShowerPrefitParameters_t prefit; JShowerPointSimplexParameters_t pointsimplex; JShowerPositionFitParameters_t positionfit; JShowerEnergyPrefitParameters_t energyprefit; JShowerDirectionPrefitParameters_t directionprefit; JShowerFitParameters_t showerfit; JShowerBjorkenYParameters_t bjyfit; ClassDef(JShowerParameters, 1); }; } /** * Read fit parameters from input. * * \param in input stream * \param parameters fit parameters * \return input stream */ std::istream& operator>>(std::istream& in, JRECONSTRUCTION::JShowerParameters& parameters); /** * Write fit parameters to output. * * \param out output stream * \param parameters fit parameters * \return output stream */ std::ostream& operator<<(std::ostream& out, const JRECONSTRUCTION::JShowerParameters& parameters); #endif