#ifndef _mevt_ScintillatorRecData_h_ #define _mevt_ScintillatorRecData_h_ // The functionality provided by this class was moved to ChannelRecData // This deprecated class is just left for backward compatibility // For frienship declaration, just forward declare. #include #include namespace mevt { class Scintillator; /** * \class ScintillatorRecData ScintillatorRecData.h "mevt/ScintillatorRecData.h" * \brief Scintillator level reconstruction data. * * \author Rodolfo Federico Gamarra * \date 08 Mar 2009 * \ingroup mevt */ class ScintillatorRecData { typedef std::list PatternMatchTimeContainer; public: typedef PatternMatchTimeContainer::const_iterator PatternMatchTimeIterator; /** * \brief Retrieve the number of pattern matchs that impinged this scintillator. * * Non-modifying accessor. */ unsigned int GetNumberOfPatternMatchs() const; /** * \brief Adds the time of a pattern match detection. */ void AddPatternMatchTime(double t); /** * \brief Clears pattern match detection times information. */ void ClearPatternMatchTimes(); /** * \brief Begin of the collection of times. */ PatternMatchTimeIterator PatternMatchTimesBegin() const; /** * \brief End of the collection of times. */ PatternMatchTimeIterator PatternMatchTimesEnd() const; private: ScintillatorRecData(); ~ScintillatorRecData(); // Keep the size separately, to avoid linear behaviour. PatternMatchTimeContainer::size_type fNPatternMatchTimes; PatternMatchTimeContainer fPatternMatchTimes; /* * Like sevt::StationRecData nothing said about * operator= and copy-construction: let the compiler * generate'em. */ /** * \brief Friendship to allow construction. */ friend class Scintillator; /** * \brief Frienship to allow destruction. * * Depends on the innards of mevt::Scintillator. */ friend class utl::ShadowPtr; }; } #endif