//////////////////////////////////////////////////////////////////// /// \class RAT:DQOccupancyByTrigger /// /// \brief Calculate the occupancy for several trigger types /// /// \author Tanner Kaptanoglu /// /// \details This processor loops through the events and finds the /// number of hits on each online channel, split up by /// trigger type, for a handful of important trigger types. /// //////////////////////////////////////////////////////////////////// #ifndef __RAT_DQOccupancyByTrigger__ #define __RAT_DQOccupancyByTrigger__ #include #include #include #include #include namespace RAT { class DQOccupancyByTrigger : public Processor { public: DQOccupancyByTrigger(); virtual ~DQOccupancyByTrigger(){}; virtual void BeginOfRun(DS::Run&); virtual void EndOfRun(DS::Run& run); virtual Processor::Result DSEvent(DS::Run&, DS::Entry& ds); virtual Processor::Result Event(DS::Entry&, DS::EV& ev); protected: int fNTrig; // Number of triggers int fNChannels; // Number of channels std::vector fTriggers; // Trigger bits to look at std::vector fTrigCount; // # PMT hits per trigger type std::vector< std::vector > fTrigOccupancy; // # PMT hits per trigger per channel }; } // namespace RAT #endif