//////////////////////////////////////////////////////////////////////// /// \class RAT::DS::MCEV /// /// \brief This class represents a detected event as defined by the /// trigger simulation. /// /// \author R Bonventre \n /// P G Jones /// /// REVISION HISTORY:\n /// 20 Jan 2014 : R Bonventre - initial version\n /// 2014-03-24 : P Jones - Refactor for ds review /// 2014-11-20 : J. R. Klein - changed gtTime and associated Get method /// from Float to Double /// 2017-11-22 : T. Kaptanoglu - Add full trigger word /// /// \details This class represents a detected event as defined by the /// trigger simulation. /// //////////////////////////////////////////////////////////////////////// #ifndef __RAT_DS_MCEV__ #define __RAT_DS_MCEV__ #include #include namespace RAT { namespace DS { class MCEV : public TObject { public: /// Construct the MCEV MCEV() : TObject(), gtid(0), gtTime(0), fullTrigType(0) { } /// Destruct ~MCEV() { } /// Get the MCHits /// /// @return the set of MCHits MCHits& GetMCHits() { return hits; } /// @copydoc GetMCHits() const MCHits& GetMCHits() const { return hits; } /// Set the event ID /// /// @param[in] id of the event void SetGTID( const Int_t id ) { gtid = id; } /// Get the event Global Trigger ID, GTID /// /// @return the event ID, GTID Int_t GetGTID() const { return gtid; }; /// Get trigger type, including triggers that weren't latched into the trigger word /// /// @return fullTrigType trigger type word Int_t GetFullTrigType() const { return fullTrigType; }; /// Set trigger type, including triggers that weren't latched into the trigger word /// /// @param[in] fullTrigType_ trigger type word void SetFullTrigType(Int_t fullTrigType_) { fullTrigType = fullTrigType_; }; /// Set the global trigger time, 50 MHz GT time in ns /// /// @param[in] gt global trigger time in the MC system void SetGTTime( const Double_t gt ) { gtTime = gt; }; /// Get the global trigger time, 50 MHz GT time in ns /// /// @return global trigger time in the MC system Double_t GetGTTime() const { return gtTime; }; // This ROOT macro adds dictionary methods to this class. // The number should be incremented whenever this class's members are changed. // It assumes this class has no virtual methods, use ClassDef if change this. ClassDefNV( MCEV, 3 ); protected: MCHits hits; ///< The collection of MCHits for this event Int_t gtid; ///< Event Global Trigger ID, GTID Double_t gtTime; ///< Trigger time of the event in the MC system Int_t fullTrigType; ///< Trigger word, including triggers that weren't latched }; } // namespace DS } // namespace RAT #endif