#ifndef GoodRunsLists_IGoodRunsListSelectorTool_H #define GoodRunsLists_IGoodRunsListSelectorTool_H #include "GaudiKernel/IAlgTool.h" #include #include #include typedef std::pair< std::vector, std::vector > vvPair; namespace Root { class TGRLCollection; } class IGoodRunsListSelectorTool : virtual public IAlgTool { public: static const InterfaceID& interfaceID() { static const InterfaceID _IGoodRunsListSelectorToolID( "IGoodRunsListSelectorTool", 1, 0 ); return _IGoodRunsListSelectorToolID; } /// DQ Test of run,LBs combination. virtual bool passRunLB( int runNumber, int lumiBlockNr, const std::vector& grlnameVec=std::vector(), const std::vector& brlnameVec=std::vector() ) = 0 ; /// DQ Test of run,LBs combination. virtual bool passThisRunLB( const std::vector& grlnameVec=std::vector(), const std::vector& brlnameVec=std::vector() ) = 0 ; /// register grl/brl combination virtual bool registerGRLSelector(const std::string& name, const std::vector& grlnameVec, const std::vector& brlnameVec) = 0 ; /// get GRL selector registry virtual const std::map< std::string, vvPair >& getGRLSelectorRegistry() = 0 ; /// get grl/brl collection virtual const Root::TGRLCollection* getGRLCollection() const = 0 ; virtual const Root::TGRLCollection* getBRLCollection() const = 0 ; }; #endif // GoodRunsLists_IGoodRunsListSelectorTool_H