114 int combId=0, processId=0;
115 QString feature, roiId;
124 using namespace Trig;
128 std::vector< Feature<TrigRoiDescriptor> > forID = cIt->get<
TrigRoiDescriptor>(
"forID");
129 std::vector< Feature<TrigRoiDescriptor> > forMS = cIt->get<
TrigRoiDescriptor>(
"forMS");
130 std::vector< Feature<TrigRoiDescriptor> > initialRoI = cIt->get<
TrigRoiDescriptor>(
"initialRoI");
131 std::vector< Feature<TrigRoiDescriptor> > secondaryRoI_L2 = cIt->get<
TrigRoiDescriptor>(
"secondaryRoI_L2");
132 std::vector< Feature<TrigRoiDescriptor> > secondaryRoI_EF = cIt->get<
TrigRoiDescriptor>(
"secondaryRoI_EF");
133 std::vector< Feature<TrigRoiDescriptor> > T2TauFinal = cIt->get<
TrigRoiDescriptor>(
"T2TauFinal");
134 std::vector< Feature<TrigRoiDescriptor> > TrigT2CaloEgamma = cIt->get<
TrigRoiDescriptor>(
"TrigT2CaloEgamma");
135 std::vector< Feature<TrigRoiDescriptor> > TrigT2CaloJet = cIt->get<
TrigRoiDescriptor>(
"TrigT2CaloJet");
136 std::vector< Feature<TrigRoiDescriptor> > TrigT2CosmicJet = cIt->get<
TrigRoiDescriptor>(
"TrigT2CosmicJet");
137 std::vector< Feature<TrigRoiDescriptor> > TrigT2CaloTau = cIt->get<
TrigRoiDescriptor>(
"TrigT2CaloTau");
142 if( !forID.empty() ){
143 for(
int dItr=0; dItr<int(forID.size()); ++dItr) {
145 feature = QString::fromStdString(
::str(*d.cptr()));
146 roiId = QString(
"ROI_ID_")+QString::number(combId)+QString(
":")+QString::number(dItr);
147 if(!feature.isEmpty()) {
148 bool fstatus =
processFeature(processId, roiId, feature); ++processId;
150 log_error(
"processitem(): feature processing failed for: "+roiId+
" > "+
qstr(
::str(*d.cptr())));
156 if( !forMS.empty() ){
157 for(
int dItr=0; dItr<int(forMS.size()); ++dItr) {
159 feature = QString::fromStdString(
::str(*d.cptr()));
160 roiId = QString(
"ROI_MS_")+QString::number(combId)+QString(
":")+QString::number(dItr);
161 if(!feature.isEmpty()) {
162 bool fstatus =
processFeature(processId, roiId, feature); ++processId;
164 log_error(
"processitem(): feature processing failed for: "+roiId+
" > "+
qstr(
::str(*d.cptr())));
170 if( !initialRoI.empty() ){
171 for(
int dItr=0; dItr<int(initialRoI.size()); ++dItr) {
172 d = initialRoI[dItr];
173 feature = QString::fromStdString(
::str(*d.cptr()));
174 roiId = QString(
"ROI_Initial_")+QString::number(combId)+QString(
":")+QString::number(dItr);
175 if(!feature.isEmpty()) {
176 bool fstatus =
processFeature(processId, roiId, feature); ++processId;
178 log_error(
"processitem(): feature processing failed for: "+roiId+
" > "+
qstr(
::str(*d.cptr())));
184 if( !secondaryRoI_L2.empty() ){
185 for(
int dItr=0; dItr<int(secondaryRoI_L2.size()); ++dItr) {
186 d = secondaryRoI_L2[dItr];
187 feature = QString::fromStdString(
::str(*d.cptr()));
188 roiId = QString(
"ROI_SecondaryL2_")+QString::number(combId)+QString(
":")+QString::number(dItr);
189 if(!feature.isEmpty()) {
190 bool fstatus =
processFeature(processId, roiId, feature); ++processId;
192 log_error(
"processitem(): feature processing failed for: "+roiId+
" > "+
qstr(
::str(*d.cptr())));
198 if( !secondaryRoI_EF.empty() ){
199 for(
int dItr=0; dItr<int(secondaryRoI_EF.size()); ++dItr) {
200 d = secondaryRoI_EF[dItr];
201 feature = QString::fromStdString(
::str(*d.cptr()));
202 roiId = QString(
"ROI_SecondaryEF_")+QString::number(combId)+QString(
":")+QString::number(dItr);
203 if(!feature.isEmpty()) {
204 bool fstatus =
processFeature(processId, roiId, feature); ++processId;
206 log_error(
"processitem(): feature processing failed for: "+roiId+
" > "+
qstr(
::str(*d.cptr())));
212 if( !T2TauFinal.empty() ){
213 for(
int dItr=0; dItr<int(T2TauFinal.size()); ++dItr) {
214 d = T2TauFinal[dItr];
215 feature = QString::fromStdString(
::str(*d.cptr()));
216 roiId = QString(
"ROI_T2TauFinal_")+QString::number(combId)+QString(
":")+QString::number(dItr);
217 if(!feature.isEmpty()) {
218 bool fstatus =
processFeature(processId, roiId, feature); ++processId;
220 log_error(
"processitem(): feature processing failed for: "+roiId+
" > "+
qstr(
::str(*d.cptr())));
226 if( !TrigT2CaloEgamma.empty() ){
227 for(
int dItr=0; dItr<int(TrigT2CaloEgamma.size()); ++dItr) {
228 d = TrigT2CaloEgamma[dItr];
229 feature = QString::fromStdString(
::str(*d.cptr()));
230 roiId = QString(
"ROI_TrigT2CaloEgamma_")+QString::number(combId)+QString(
":")+QString::number(dItr);
231 if(!feature.isEmpty()) {
232 bool fstatus =
processFeature(processId, roiId, feature); ++processId;
234 log_error(
"processitem(): feature processing failed for: "+roiId+
" > "+
qstr(
::str(*d.cptr())));
240 if( !TrigT2CaloJet.empty() ){
241 for(
int dItr=0; dItr<int(TrigT2CaloJet.size()); ++dItr) {
242 d = TrigT2CaloJet[dItr];
243 feature = QString::fromStdString(
::str(*d.cptr()));
244 roiId = QString(
"ROI_TrigT2CaloJet_")+QString::number(combId)+QString(
":")+QString::number(dItr);
245 if(!feature.isEmpty()) {
246 bool fstatus =
processFeature(processId, roiId, feature); ++processId;
248 log_error(
"processitem(): feature processing failed for: "+roiId+
" > "+
qstr(
::str(*d.cptr())));
254 if( !TrigT2CosmicJet.empty() ){
255 for(
int dItr=0; dItr<int(TrigT2CosmicJet.size()); ++dItr) {
256 d = TrigT2CosmicJet[dItr];
257 feature = QString::fromStdString(
::str(*d.cptr()));
258 roiId = QString(
"ROI_TrigT2CosmicJet_")+QString::number(combId)+QString(
":")+QString::number(dItr);
259 if(!feature.isEmpty()) {
260 bool fstatus =
processFeature(processId, roiId, feature); ++processId;
262 log_error(
"processitem(): feature processing failed for: "+roiId+
" > "+
qstr(
::str(*d.cptr())));
268 if( !TrigT2CaloTau.empty() ){
269 for(
int dItr=0; dItr<int(TrigT2CaloTau.size()); ++dItr) {
270 d = TrigT2CaloTau[dItr];
271 feature = QString::fromStdString(
::str(*d.cptr()));
272 roiId = QString(
"ROI_TrigT2CaloTau_")+QString::number(combId)+QString(
":")+QString::number(dItr);
273 if(!feature.isEmpty()) {
274 bool fstatus =
processFeature(processId, roiId, feature); ++processId;
276 log_error(
"processitem(): feature processing failed for: "+roiId+
" > "+
qstr(
::str(*d.cptr())));
292 log_error(
"processitem(): ROI data and ID entries do not match!");
297 log_error(
"processitem(): ROI vectors empty: cannot append IDs!");