25 if (p ==
indexes_.end() || p->detid != DetId) {
31 detregistry.
detid = DetId;
36 for (
size_t i = 0;
i < userContent.size(); ++
i)
41 if (p->detid == DetId) {
45 for (
size_t i = 0;
i < userContent.size(); ++
i)
55 if (p ==
indexes_.end() || p->detid != DetId) {
57 std::cout <<
"not in range " << std::endl;
64 std::vector<uint32_t> DetIds_;
68 DetIds_.push_back(
p->detid);
81 edm::LogError(
"HDQMSummary") <<
"attempting to retrieve non existing historic DB object : " << elementName
90 if (p ==
indexes_.end() || p->detid != detID) {
91 throw cms::Exception(
"") <<
"not allowed to modify " << elementName
92 <<
" in historic DB - SummaryObj needs to be available first !";
97 std::vector<float>::const_iterator it = range.first +
getPosition(elementName);
98 std::vector<float>::difference_type
pos = -1;
100 pos = it -
v_sum_.begin();
106 std::vector<std::string>
list = _list;
107 std::vector<float> SummaryObj;
109 if (range.first != range.second) {
110 for (
unsigned int i = 0;
i < list.size();
i++) {
114 SummaryObj.push_back(*((range.first) + pos));
116 SummaryObj.push_back(-999.);
119 for (
unsigned int i = 0;
i < list.size();
i++)
120 SummaryObj.push_back(
127 std::vector<float> SummaryObj;
129 if (range.first != range.second) {
131 SummaryObj.push_back(*((range.first) +
i));
134 SummaryObj.push_back(-99.);
142 std::vector<float> vSumElement;
143 std::vector<uint32_t> DetIds_ =
getDetIds();
147 for (
unsigned int i = 0;
i < DetIds_.size();
i++) {
149 if (range.first != range.second) {
150 vSumElement.push_back(*((range.first) + pos));
152 vSumElement.push_back(-99.);
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)
static std::string const input
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< 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