30 if(p==
indexes_.end() || p->detid!=DetId){
36 detregistry.
detid = DetId;
41 for(
size_t i=0;
i<userContent.size();++
i)
51 for(
size_t i=0;
i<userContent.size();++
i)
64 if (p==
indexes_.end()|| p->detid!=DetId) {
74 std::vector<uint32_t> DetIds_;
78 DetIds_.push_back(
p->detid);
92 else edm::LogError(
"HDQMSummary") <<
"attempting to retrieve non existing historic DB object : "<< elementName <<std::endl;
103 if (p==
indexes_.end()|| p->detid!=detID)
106 <<
"not allowed to modify "<< elementName <<
" in historic DB - SummaryObj needs to be available first !";
111 std::vector<float>::const_iterator it = range.first+
getPosition(elementName);
112 std::vector<float>::difference_type
pos = -1;
114 pos = it -
v_sum_.begin();
121 std::vector<float> SummaryObj;
123 if (range.first != range.second ) {
124 for (
unsigned int i=0;
i<list.size();
i++){
128 SummaryObj.push_back(*((range.first)+pos));
130 SummaryObj.push_back(-999.);
134 for (
unsigned int i=0;
i<list.size();
i++) SummaryObj.push_back(-99.);
141 std::vector<float> SummaryObj;
143 if (range.first != range.second ) {
144 for (
unsigned int i=0;
i<
userDBContent_.size();
i++) SummaryObj.push_back(*((range.first)+
i));}
146 for (
unsigned int i=0;
i<
userDBContent_.size();
i++) SummaryObj.push_back(-99.);}
160 std::vector<float> vSumElement;
161 std::vector<uint32_t> DetIds_ =
getDetIds();
166 for (
unsigned int i=0;
i<DetIds_.size();
i++){
168 if (range.first != range.second ) {
169 vSumElement.push_back(*((range.first)+pos));}
170 else { vSumElement.push_back(-99.);}
180 std::cout <<
"Nr. of detector elements in HDQMSummary object is " <<
indexes_.size()
std::pair< ContainerIterator, ContainerIterator > Range
unsigned long long getTimeValue() const
bool put(const uint32_t &detID, InputVector &input, std::vector< std::string > &userContent)
std::vector< float > v_sum_
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
void setObj(const uint32_t &detID, std::string elementName, float value)
unsigned long long timeValue_
std::vector< float > InputVector
Registry::const_iterator RegistryIterator
std::vector< DetRegistry > indexes_
std::vector< std::string > userDBContent_
std::vector< float > getSummaryObj() const
const short getPosition(std::string elementName) const
const Range getRange(const uint32_t &detID) const
std::vector< std::vector< double > > tmp
std::vector< uint32_t > getDetIds() const
std::vector< std::string > getUserDBContent() const
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger list("!*","!HLTx*"if it matches 2 triggers or more) will accept the event if all the matching triggers are FAIL.It will reject the event if any of the triggers are PASS or EXCEPTION(this matches the behavior of"!*"before the partial wildcard feature was incorporated).Triggers which are in the READY state are completely ignored.(READY should never be returned since the trigger paths have been run