20 m_dbxrange(), m_dbxrangelat(),
21 m_bxrange(), m_bxrangelat(),
22 m_bxcyclerange(), m_bxcyclerangelat(),
23 m_dbxcyclerange(), m_dbxcyclerangelat(),
25 m_dbxgenericrange(),m_dbxgenericfirst(0),m_dbxgenericlast(1),
82 const std::vector<int>
dummy;
89 const std::vector<int> apvphases =
getAPVPhase(iEvent);
96 const std::vector<int> apvphases =
getAPVPhase(event);
108 const std::vector<int>& apvphases = _apvphases;
117 for(std::vector<int>::const_iterator wantedmode =
m_apvmodes.begin();wantedmode!=
m_apvmodes.end();++wantedmode) {
118 modeok = modeok || (apvmode == *wantedmode);
120 if(!modeok)
return false;
139 for(std::vector<int>::const_iterator
phase=apvphases.begin();
phase!=apvphases.end();++
phase) {
142 selected = selected && phaseselected;
145 for(std::vector<int>::const_iterator
phase=apvphases.begin();
phase!=apvphases.end();++
phase) {
147 *
phase>=0 && latency>=0);
149 selected = selected && phaseselected;
152 for(std::vector<int>::const_iterator
phase=apvphases.begin();
phase!=apvphases.end();++
phase) {
155 selected = selected && phaseselected;
158 for(std::vector<int>::const_iterator
phase=apvphases.begin();
phase!=apvphases.end();++
phase) {
162 selected = selected && phaseselected;
217 const std::vector<int>
dummy;
264 return ((range.empty() ||
265 (range.size()==1 && range[0]<0) ||
266 (range.size()==2 && range[0]<0 && range[1]<0)));
272 bool cut1 = range.empty() || range[0]<0 || (extra && bx >= range[0]);
273 bool cut2 = range.size()<2 || range[1]<0 || (extra && bx <= range[1]);
275 if(range.size()>=2 && range[0]>=0 && range[1]>=0 && (range[0] > range[1])) {
286 std::string msgcategory =
"EventWithHistoryFilterConfiguration";
301 edm::LogInfo(msgcategory) <<
"historyProduct: " << historyTag <<
" APVCyclePhase: " << apvphaseTag;
unsigned int depth() const
std::vector< int > m_dbxcyclerange
T getUntrackedParameter(std::string const &, T const &) const
std::vector< int > m_bxcyclerange
long long deltaBX(const unsigned int ev2, const unsigned int ev1) const
bool getByToken(EDGetToken token, Handle< PROD > &result) const
const bool isAPVPhaseNotNeeded() const
int16_t singleReadOutMode() const
const bool is_selected(const EventWithHistory &he, const edm::EventSetup &iSetup, const std::vector< int > &apvphases) const
long long absoluteBX(const unsigned int ev1) const
long long absoluteBXinCycle(const unsigned int ev1, const int bx0) const
const std::vector< int > getAPVPhase(const edm::Event &iEvent) const
std::vector< int > m_dbxgenericrange
const bool isAPVModeNotNeeded() const
unsigned int m_dbxgenericfirst
edm::EDGetTokenT< APVCyclePhaseCollection > m_APVPhaseToken
void printConfig(const edm::InputTag &historyTag, const edm::InputTag &apvphaseTag) const
std::vector< int > m_dbxrangelat
void set(const edm::ParameterSet &iConfig, edm::ConsumesCollector &&iC)
const int getAPVMode(const edm::EventSetup &iSetup) const
const std::vector< int > getPhases(const std::string partition) const
std::vector< int > m_dbxtrpltrange
edm::EDGetTokenT< EventWithHistory > m_historyToken
const int getAPVLatency(const edm::EventSetup &iSetup) const
uint16_t singleLatency() const
If all the latency values stored are equal return that value, otherwise return -1.
const bool selected(const EventWithHistory &he, const edm::EventSetup &iSetup) const
const bool isInRange(const long long bx, const std::vector< int > &range, const bool extra) const
std::vector< int > m_bxrangelat
const bool isAPVLatencyNotNeeded() const
std::vector< int > phases
std::vector< int > m_bxcyclerangelat
std::vector< int > m_dbxcyclerangelat
long long deltaBXinCycle(const unsigned int ev2, const unsigned int ev1, const int bx0) const
const bool isCutInactive(const std::vector< int > &range) const
std::vector< int > m_apvmodes
std::vector< int > m_dbxrange
unsigned int m_dbxgenericlast
std::vector< int > m_bxrange