//----------------------------------------------------------- // File and Version Information: // $Id$ // // Description: // TPC digitization: avalanche // Models a cloud of charge produced by a gas amplification // process in the TPC-GEMs // // Environment: // Software developed for the PANDA Detector at FAIR. // // Author List: // Sebastian Neubert TUM (original author) // Cristoforo Simonetto TUM // // //----------------------------------------------------------- #ifndef TPCAVALANCHE_HH #define TPCAVALANCHE_HH // Base Class Headers ---------------- #include "TObject.h" // Collaborating Class Headers ------- #include // Collaborating Class Declarations -- class TpcDriftedElectron; class TpcAvalanche : public TObject { public: // Constructors/Destructors --------- TpcAvalanche(); TpcAvalanche(const double x, const double y, const double t, const double Amp, TpcDriftedElectron* tpcDElectronp); ~TpcAvalanche(){;} // Operators friend bool operator== (const TpcAvalanche&, const TpcAvalanche&); friend bool operator< (const TpcAvalanche& lhs,const TpcAvalanche& rhs) {return lhs._t < rhs._t;} friend std::ostream& operator<< (std::ostream& s, const TpcAvalanche& me); // Accessors ----------------------- double x() const {return _x;} double y() const {return _y;} double t() const {return _t;} double amp() const {return _amp;} unsigned int mcTrackId() const; unsigned int mcHitId() const; TpcDriftedElectron* mother() const {return _mother;} // Modifiers ----------------------- void addAmp(double a){_amp+=a;} private: // Private Data Members ------------ double _x; double _y; double _t; double _amp; TpcDriftedElectron* _mother; // Private Methods ----------------- public: ClassDef(TpcAvalanche,1) }; #endif //-------------------------------------------------------------- // $Log$ //--------------------------------------------------------------