ATLAS Offline Software
MissingEtCollHandle.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 
7 // //
8 // Implementation of class MissingEtCollHandle //
9 // //
10 // Author: Riccardo-Maria BIANCHI (rbianchi@cern.ch) //
11 // Initial version: May 2014 //
12 // //
14 
15 //Local
16 #include "MissingEtCollHandle.h"
17 
18 #include "AODHandleBase.h"
19 #include "AODCollHandleBase.h"
20 #include "AODSysCommonData.h"
21 
22 //xAOD
23 //#include "xAODJet/MissingETContainer.h"
25 
26 
27 //VP1
28 #include "VP1Base/IVP1System.h"
29 #include "VP1Base/VP1Msg.h"
30 #include "VP1Base/VP1Interval.h"
31 #include "VP1Base/VP1Serialise.h"
32 #include "VP1Base/VP1Deserialise.h"
33 #ifndef BUILDVP1LIGHT
36 #endif
37 
38 //Qt
39 #include <QStringList>
40 
41 // SoCoin
42 #include <Inventor/C/errors/debugerror.h>
43 #include <Inventor/nodes/SoSeparator.h>
44 #include <Inventor/nodes/SoSwitch.h>
45 #include <Inventor/nodes/SoMaterial.h>
46 
48 #include "MissingEtHandle.h"
49 //#include "Inventor/nodes/SoDrawStyle.h"
50 //#include "Inventor/nodes/SoLightModel.h"
51 
52 #ifdef BUILDVP1LIGHT
53  #include <QSettings>
54  #include "xAODRootAccess/Init.h"
55  #include "xAODRootAccess/TEvent.h"
56 #endif // BUILDVP1LIGHT
57 
58 
59 //____________________________________________________________________
60 #if defined BUILDVP1LIGHT
62  {
63  return sys->getObjectList(xAOD::Type::Other);
64  }
65 #else
67  {
69  }
70 #endif // BUILDVP1LIGHT
71 
72 //____________________________________________________________________
74 public:
78 
79  //Vector of iParticle handles:
80  std::vector<MissingEtHandle*> handles;
81  // QList of xAOD handles
82  QList<AODHandleBase*> handlesList;
83 
84  //For iteration:
87 
88  // settings
89  double scale = 1.; // the default scale of all jets
90  bool randomColours = false;
91 
92  // SoMaterial* defaultParametersMaterial; /// This will be given to the VP1MaterialButton in
93 
94  void possiblyUpdateGUI() {//Fixme: to AODCollHandleBase
95  if (!((updateGUICounter++)%50)) {
97  }
98  }
99 };
100 
101 //____________________________________________________________________
103  : AODCollHandleBase(cd,name,type), m_d(new Imp), m_cut_phi_allowall{}, m_cut_phi_allwillfail{}
104 {
105  m_d->theclass = this;
106  m_d->updateGUICounter = 0;
107  m_d->collSettingsButton=0;
108 
109 
110  //The object names should not contain all sorts of funky chars (mat button style sheets wont work for instance):
111  QString safetext(text());
112  safetext.replace(' ','_');
113  safetext.replace('[','_');
114  safetext.replace(']','_');
115  safetext.replace('/','_');
116  safetext.replace('.','_');
117  safetext.replace(',','_');
118  safetext.replace('<','_');
119  safetext.replace('>','_');
120  safetext.replace('&','_');
121 
122  // m_d->defaultParametersMaterial = new SoMaterial;
123  // m_d->defaultParametersMaterial->setName(("MissingEtCollHandle"+safetext).toStdString().c_str());
124  // m_d->defaultParametersMaterial->ref();
125  // m_d->matButton->setDefaultParameterMaterial(m_d->defaultParametersMaterial); FIXME
126 }
127 
128 //____________________________________________________________________
130 {
131  // m_d->defaultParametersMaterial->unref();
132 
133  // clean the QList<handle>
134  for(AODHandleBase* handle : m_d->handles) {
135  delete handle;
136  }
137 
138  // TODO: implemet this del
139  // if (m_d->bTaggingSwitch) m_d->bTaggingSwitch->unref();
140 
141  delete m_d;
142 }
143 
144 //____________________________________________________________________
146 {
147  // std::cout<<"MissingEtCollHandle::init 1"<<std::endl;
148 
149  // m_d->matButton = new MissingEtCollectionSettingsButton; // TODO: update for jet
150  // m_d->matButton->setMaterialText(name());
153 
154  // std::cout<<"Calling VP1StdCollection::init with m_d->matButton (MissingEtCollectionSettingsButton)="<<m_d->matButton<<std::endl;
155  VP1StdCollection::init(m_d->collSettingsButton);//this call is required. Passing in m_d->collSettingsButton means we have the more complex button.
156  setupSettingsFromController(common()->controller());
157  connect(this,SIGNAL(visibilityChanged(bool)),this,SLOT(collVisibilityChanged(bool)));
158 
159  // std::cout<<"MissingEtCollHandle::init 2"<<std::endl;
160  // std::cout<<"swi: "<<collSwitch()<<std::endl;
161  // std::cout<<"sep: "<<collSep()<<std::endl;
162  // std::cout<<"mat: "<<material()<<std::endl;
163 
164  // collSwitch()->addChild(m_d->collSettingsButton->trackLightModel()); // TODO: update for jets
165  // collSwitch()->addChild(m_d->collSettingsButton->trackDrawStyle()); // TODO: update for jets
166 }
167 
168 //____________________________________________________________________
170 {
171  m_d->handles.reserve(n);
172 }
173 
174 //____________________________________________________________________
176 {
177  MissingEtHandle* handle = dynamic_cast<MissingEtHandle* >(ah);
178  if (!handle) {
179  message("ERROR - wrong handle type passed to MissingEtCollHandle::addHandle!");
180  return;
181  }
182  m_d->handles.push_back(handle); // for the vector<handle>
183  m_d->handlesList << handle; // for the QList<handle>
184 }
185 
186 //____________________________________________________________________
188 {
189  m_d->itHandles = m_d->handles.begin();
190  m_d->itHandlesEnd = m_d->handles.end();
191 }
192 
193 //____________________________________________________________________
195  if (m_d->itHandles==m_d->itHandlesEnd)
196  return 0;
197  else
198  return *(m_d->itHandles++);
199 }
200 
201 //____________________________________________________________________
202 QList<AODHandleBase*> MissingEtCollHandle::getHandlesList() const
203 {
204  messageVerbose("AODCollHandleBase::getHandlesList()");
205  return m_d->handlesList;
206 }
207 
208 
209 
211 
212  //cuts
213  // connect(m_d->collSettingsButton,SIGNAL(cutAllowedPtChanged(const VP1Interval&)),this,SLOT(setCutAllowedPt(const VP1Interval&)));
214  // setCutAllowedPt(m_d->collSettingsButton->cutAllowedPt());
215  //
216  // connect(m_d->collSettingsButton,SIGNAL(cutAllowedEtaChanged(const VP1Interval&)),this,SLOT(setCutAllowedEta(const VP1Interval&)));
217  // setCutAllowedEta(m_d->collSettingsButton->cutAllowedEta());
218  //
219  // connect(m_d->collSettingsButton,SIGNAL(cutAllowedPhiChanged(const QList<VP1Interval>&)),this,SLOT(setCutAllowedPhi(const QList<VP1Interval>&)));
220  // setCutAllowedPhi(m_d->collSettingsButton->cutAllowedPhi());
221 
222  // // Parameters
223  // connect(m_d->collSettingsButton,SIGNAL(showParametersChanged(bool)), this,SLOT(showParametersChanged(bool)));
224  // connect(m_d->collSettingsButton,SIGNAL(colourParametersByTypeChanged(bool)),this,SLOT(showParametersChanged(bool)));
225  // Just reusing the same slot, since it doesn't
226 
227  // scale
228  //connect(m_d->collSettingsButton,SIGNAL(scaleChanged(const double&)),this,SLOT(setScale(const double&)));
229  //setScale( this->scale() );
230 
231  // MET length and thickness
232  connect(m_d->collSettingsButton,SIGNAL(metSizeChanged(int)),this,SLOT(setMetSize(int)));
234 
235  // Phi cut
236  connect(m_d->collSettingsButton,SIGNAL(cutAllowedPhiChanged(const QList<VP1Interval>&)),this,SLOT(setCutAllowedPhi(const QList<VP1Interval>&)));
238 
239  // random jet colors
240  // connect(m_d->collSettingsButton,SIGNAL(rerandomise()),this,SLOT(rerandomise()));
241  // connect(m_d->collSettingsButton,SIGNAL(randomJetColoursChanged(const bool&)),this,SLOT(setRandomJetColours(const bool&)));
242  // setRandomJetColours(m_d->collSettingsButton->randomJetColours());
243 }
244 
245 
247 {
248  // TODO: it is not used so far! Check Other collections and update accordingly
249 
250  // kinetic cuts
252  // other settings
254 
255 }
256 
257 //SoMaterial* MissingEtCollHandle::defaultParameterMaterial() const {
258 // return m_d->defaultParametersMaterial;
259 //}
260 
261 
263  if (!m_d->collSettingsButton){
264  messageVerbose("MET - No collSettingsButton set! Can't call init(), so crash is imminent...");
265  }
266  return *m_d->collSettingsButton;
267 }
268 
269 
270 
272 //void MissingEtCollHandle::setScale(const double& sca)
273 //{
274 //
275 // messageVerbose("MissingEtCollHandle::setScale() - scale: " + QString::number(sca));
276 //
277 // if (m_d->handlesList.isEmpty()) {
278 // messageVerbose("no jet handles defined! returning.");
279 // return;
280 // }
281 //
282 // if (m_d->scale == sca)
283 // return;
284 //
285 // m_d->scale = std::max(1*Gaudi::Units::mm/(100*Gaudi::Units::GeV),
286 // std::min(99*Gaudi::Units::m/(1*Gaudi::Units::MeV),
287 // // m_d->collSettingsButton->lengthOf100GeV() * Gaudi::Units::m/(100.0*Gaudi::Units::GeV)));
288 // sca * Gaudi::Units::m/(100.0*Gaudi::Units::GeV)));
289 //
290 // if (!isLoaded())
291 // return;
292 //
293 // messageVerbose("Scale change: to "+str(m_d->scale/(Gaudi::Units::m/(100.0 * Gaudi::Units::GeV)))+" m/100GeV. Updating "+str(m_d->handlesList.count())+" jets");
294 // std::cout << "Scale change: m_d->scale/(Gaudi::Units::m/(100.0*Gaudi::Units::GeV)))" << "m/100GeV. Updating " << m_d->handlesList.count() << " jets" << std::endl;
295 // largeChangesBegin();
296 //
297 // for(AODHandleBase* partHandle : m_d->handles) {
298 // MissingEtHandle* met = dynamic_cast<MissingEtHandle*>(partHandle);
299 // if (met->has3DObjects()) {
300 // met->setScale(m_d->scale);
301 // met->updateHeight();
302 // }
303 // }
304 // largeChangesEnd();
305 //}
306 
307 
309 {
310  messageVerbose("signal received: metSizeChanged ("+str(size)+")");
311 
313 }
314 
315 
317 //double MissingEtCollHandle::scale() const
318 //{
319 // return m_d->scale;
320 //}
321 
322 
324 //bool MissingEtCollHandle::isRandomColors() const
325 //{
326 // VP1Msg::messageDebug("MissingEtCollHandle::isRandomColors()");
327 // return m_d->randomColours;
328 //}
329 //
330 //
332 //void MissingEtCollHandle::setRandomJetColours(const bool& b)
333 //{
334 // messageVerbose("MissingEtCollHandle::setRandomJetColours() - b: "+QString::number(b));
335 //
336 // if (m_d->randomColours == b)
337 // return;
338 //
339 // m_d->randomColours = b;
340 // std::cout << "isRandom: " << m_d->randomColours << std::endl;
341 //
342 // if (!isLoaded())
343 // return;
344 //
345 // largeChangesBegin();
346 // int ijet = 0;
347 // for(AODHandleBase* partHandle : m_d->handles) {
348 // ++ijet;
349 // messageVerbose("considering jet: "+QString::number(ijet));
350 // MissingEtCollHandle* jet = dynamic_cast<MissingEtCollHandle*>(partHandle);
351 // if (jet->has3DObjects()) {
352 // int randomColors = isRandomColors();
353 // messageVerbose("setting random material on jet: "+QString::number(ijet)+" - random colors? "+QString::number(randomColors));
355 // jet->updateMaterial( randomColors );
356 // }
357 // }
358 // largeChangesEnd();
359 //}
360 
361 
362 
364 //void MissingEtCollHandle::rerandomise()
365 //{
366 // messageVerbose("MissingEtCollHandle::rerandomise()");
367 //
368 // if (!isLoaded()) {
369 // messageVerbose("MissingEtCollHandle::rerandomise() - Returning.");
370 // return;
371 // }
372 // if (!isRandomColors()) {
373 // VP1Msg::message("'Random jet colours' is not checked. Nothing to do. Returning.");
374 // return;
375 // }
376 //
377 // largeChangesBegin();
378 // for(AODHandleBase* partHandle : m_d->handles) {
379 // MissingEtCollHandle* jet = dynamic_cast<MissingEtCollHandle*>(partHandle);
380 // if (jet->has3DObjects())
381 // jet->rerandomiseMaterial();
382 // }
383 // largeChangesEnd();
384 //}
385 
386 
387 
388 
389 
390 
391 
392 //____________________________________________________________________
394 {
395  messageVerbose("loading MissingEt collection");
396 
397  //Get collection:
398  const xAOD::MissingETContainer * coll(nullptr);
399 
400  #if defined BUILDVP1LIGHT
401  // Retrieve objects from the event
402  if( !(systemBase()->getEvent())->retrieve( coll, name().toStdString()).isSuccess() ) {
403  QString errMsg = "Failed to retrieve " + name();
404  message("Error: Could not retrieve collection with key="+name());
405  return false;
406  }
407  #else
408  if (!VP1SGAccessHelper(systemBase()).retrieve(coll, name())) {
409  message("Error: Could not retrieve MET collection with key="+name());
410  return false;
411  }
412  #endif // BUILDVP1LIGHT
413 
414  // // Retrieve the xAOD particles:
415  // const xAOD::MissingETContainer* xaod = evtStore()->retrieve<const xAOD::MissingETContainer>( m_JetCollection );
416 
417  // Check that the auxiliary store association was made successfully:
418  if( ! coll->hasStore() ) {
419  message("No auxiliary store got associated to the MET container with key: " +name());
420  }
421 
422  // This is needed for now, until the issues around the DV code are
423  // sorted out...
424  const_cast< xAOD::MissingETContainer* >( coll )->setStore(
425  ( SG::IAuxStore* ) coll->getConstStore() );
426 
427  //Make appropriate Jet handles:
428  // hintNumberOfTracksInEvent(coll->size());
430  for ( it = coll->begin() ; it != itEnd; ++it) {
432  if (!*it) {
433  messageDebug("WARNING: Ignoring null MET pointer.");
434  continue;
435  }
436  /*
437  if ((*it)->charge()==0.0) {
438  messageDebug("WARNING: Ignoring Jet which claims to be neutral (charge()==0.0).");
439  continue;
440  }
441  */
442  addHandle(new MissingEtHandle(this,*it));
443  }
444 
445  return true;
446 }
447 
448 
449 
450 //Cuts:
451 //____________________________________________________________________
453  messageVerbose("MissingEtCollHandle::cut()");
454 
455  if (MissingEtHandle* handle = dynamic_cast<MissingEtHandle*>(c))
456  {
457 
458  // //------ ENERGY CUTS
459  // messageVerbose("jet's energy, allowedPt^2, PtAll: - " + QString::number(handle->energyForCuts()) + " - " + getCutAllowedPt().toString() + " - " + QString::number(int(getPtAllowall())) );
460  // double jEnergy = handle->energyForCuts();
461  // double jEnergySqr = jEnergy * jEnergy; // in AODCollHandleBase the allowedPt is stored as squared, to avoid square-root operations
462  // if (!getPtAllowall() && !getCutAllowedPt().contains(jEnergySqr) ) {
463  // messageVerbose("Pt cut not passed");
464  // return false;
465  // }
466  //
467  // //------ ETA CUTS
468  // messageVerbose("jet's eta, etaCut, EtaAll: " + QString::number(handle->eta()) + " - " + getCutAllowedEta().toString() + " - " + QString::number(int(getEtaAllowall())) );
469  // if (!getEtaAllowall() && !getCutAllowedEta().contains(handle->eta())) {
470  // messageVerbose("Eta cut not passed");
471  // return false;
472  // }
473  //
474  //------ PHI CUTS
475  if (!getPhiAllowall() ) {
476  double phi = handle->phi();
477  bool ok(false);
478  for (const VP1Interval& phirange : getCutAllowedPhi() ) {
479  messageVerbose("MET phi, phiCut, PhiAll: " + QString::number(phi) + " - " + phirange.toString() + " - " + QString::number(int(getPhiAllowall())) );
480  if (phirange.contains(phi)||phirange.contains(phi+2*M_PI)||phirange.contains(phi-2*M_PI)) {
481  ok = true;
482  break;
483  }
484  }
485  if (!ok) {
486  messageVerbose("Phi cut not passed");
487  return false;
488  }
489  }
490 
491 
492  } // if(dynamic_cast)
493  else{
494  messageVerbose("Not a MissingEtCollHandle. Check your code! Returning 'false'...");
495 // if (! AODCollHandleBase::cut(c)) // AODCollHandleBase::cut is pure virtual, now
496  return false;
497  }
498 
499  return true; //default
500 
501 }
502 
503 
504 
506 //void MissingEtCollHandle::showParametersChanged(bool val) {
507 // messageVerbose("MissingEtCollHandle::showParametersChanged to "+str(val));
508 // update3DObjectsOfAllHandles();
509 //}
510 
511 
512 //____________________________________________________________________
513 void MissingEtCollHandle::setCutAllowedPhi(const QList<VP1Interval>& allowedPhi)
514 {
515  VP1Msg::messageVerbose("MissingEtCollHandle::setCutAllowedPhi() - signal received in setCutAllowedPhi.");
516 
517  if (m_cut_allowedPhi==allowedPhi)
518  return;
519 
520  m_cut_allowedPhi = allowedPhi;
521 
522  m_cut_phi_allowall = m_cut_allowedPhi.count()==1 && m_cut_allowedPhi.at(0).isAllR();
523  m_cut_phi_allwillfail = m_cut_allowedPhi.isEmpty(); // || m_cut_allowedPtSq.isEmpty() || m_cut_allowedEta.isEmpty();
524 
525  if (m_cut_phi_allowall) {
527  return;
528  }
529  if (m_cut_phi_allwillfail) {
531  return;
532  }
533 
534  // Test: is the current interval larger than the previous one?
535  //bool relaxcut = allowedPhi.contains(m_cut_allowedPhi); // TODO: implement this 'contains' function
536  // Store the current interval
537 // m_cut_allowedPhi = allowedPhi;
538 
539 // if (relaxcut)
540 // recheckCutStatusOfAllNotVisibleHandles();
541 // else
542 // recheckCutStatusOfAllVisibleHandles();
543 
545  recheckCutStatusOfAllNotVisibleHandles(); // Redundant, but needed! TODO: remove this when new 'contains' is ready
546 
547  return;
548 }
549 
550 //____________________________________________________________________
552 {
553  messageDebug("MissingEtCollHandle::persistifiableState() - start...");
554 
555  // if (!m_d->matButton) {
556  // message("ERROR: persistifiableState() called before init()");
557  // return QByteArray();
558  // }
559 
560 
561  VP1Serialise serialise(1/*version*/);
562 
563  // settings
564  serialise.disableUnsavedChecks();
565 
566  // SAVE THE CHECKED/UNCHECKED STATUS OF THE COLLECTION
567  serialise.save(visible());
568 
569  // SAVE THE MATERIAL BUTTON
570  //Q_ASSERT(m_d->matButton&&"Did you forget to call init() on this VP1StdCollection?");
571  //serialise.save(m_d->matButton->saveState());
572 
573  // SAVE THE EXTRA-STATES
574  serialise.save(extraWidgetsState());//version 1+
575 
576  // SAVE MATERIAL SETTINGS / CUTS
578 
579  messageDebug("MissingEtCollHandle::persistifiableState() - end.");
580  return serialise.result();
581 }
582 
583 //____________________________________________________________________
584 void MissingEtCollHandle::setState(const QByteArray&state)
585 {
586  messageDebug("MissingEtCollHandle::setState()");
587 
588  VP1Deserialise des(state);
589  des.disableUnrestoredChecks();
590  if (des.version()!=0&&des.version()!=1) {
591  messageDebug("Warning: Ignoring state with wrong version");
592  return;
593  }
594 
595  // save state
596 
597  bool vis = des.restoreBool();
598 
599  // QByteArray matState = des.restoreByteArray();
600  // m_d->matButton->restoreFromState(matState);
601  QByteArray extraWidgetState = des.version()>=1 ? des.restoreByteArray() : QByteArray();
602  setVisible(vis);
603 
604  if (extraWidgetState!=QByteArray())
605  setExtraWidgetsState(extraWidgetState);
606 
607  // MATERIAL SETTINGS / CUTS
608  messageDebug("restoring material collection button...");
609  des.restore(m_d->collSettingsButton);
610 
611  messageDebug("reset all caches storing values for cuts...");
613 
614  messageDebug("recheck all handles...");
616 
617 }
python.PyKernel.retrieve
def retrieve(aClass, aKey=None)
Definition: PyKernel.py:110
xAOD::iterator
JetConstituentVector::iterator iterator
Definition: JetConstituentVector.cxx:68
VP1Serialise.h
AODCollHandleBase::setExtraWidgetsState
void setExtraWidgetsState(const QByteArray &)
Definition: AODCollHandleBase.cxx:519
MissingEtCollHandle::Imp::itHandles
std::vector< MissingEtHandle * >::iterator itHandles
Definition: MissingEtCollHandle.cxx:85
MissingEtCollHandle::resetCachedValuesCuts
void resetCachedValuesCuts()
Definition: MissingEtCollHandle.cxx:246
DataModel_detail::const_iterator
Const iterator class for DataVector/DataList.
Definition: DVLIterator.h:82
VP1Deserialise.h
VP1Serialise
Definition: VP1Serialise.h:45
MissingEtCollHandle::~MissingEtCollHandle
virtual ~MissingEtCollHandle()
Definition: MissingEtCollHandle.cxx:129
MissingEtCollHandle::getPhiAllowall
bool getPhiAllowall()
Definition: MissingEtCollHandle.h:76
GlobalVariables.phirange
phirange
Definition: GlobalVariables.py:64
phi
Scalar phi() const
phi method
Definition: AmgMatrixBasePlugin.h:64
AODHandleBase
Definition: AODHandleBase.h:43
AODCollHandleBase
Base class for all AOD object collections This class primarily handles setting up the interface,...
Definition: AODCollHandleBase.h:57
MissingEtCollHandle::getHandlesList
QList< AODHandleBase * > getHandlesList() const
Definition: MissingEtCollHandle.cxx:202
RoiUtil::serialise
void serialise(const std::vector< const IRoiDescriptor * > &rois, roiserial_type &s)
serialise an entire vector of IRoiDescriptors
Definition: RoiSerialise.cxx:45
ObjectType
ObjectType
Definition: BaseObject.h:11
AODSysCommonData
Definition: AODSysCommonData.h:42
MissingEtCollHandle::Imp::theclass
MissingEtCollHandle * theclass
Definition: MissingEtCollHandle.cxx:75
VP1Msg.h
VP1HelperClassBase::messageVerbose
void messageVerbose(const QString &) const
Definition: VP1HelperClassBase.cxx:78
fillPileUpNoiseLumi.connect
string connect
Definition: fillPileUpNoiseLumi.py:70
CSV_InDetExporter.new
new
Definition: CSV_InDetExporter.py:145
skel.it
it
Definition: skel.GENtoEVGEN.py:423
MissingEtCollHandle::setupSettingsFromControllerSpecific
virtual void setupSettingsFromControllerSpecific(const AODSystemController *)
For extensions specific to this collection.
Definition: MissingEtCollHandle.cxx:210
M_PI
#define M_PI
Definition: ActiveFraction.h:11
VP1StdCollection::init
virtual void init(VP1MaterialButtonBase *button=0)
Definition: VP1StdCollection.cxx:73
MissingEtCollHandle::Imp::handles
std::vector< MissingEtHandle * > handles
Definition: MissingEtCollHandle.cxx:80
MissingEtCollHandle::m_cut_allowedPhi
QList< VP1Interval > m_cut_allowedPhi
Definition: MissingEtCollHandle.h:97
MissingEtCollectionSettingsButton::metLength
float metLength() const
Definition: MissingEtCollectionSettingsButton.cxx:248
VP1String::str
static QString str(const QString &s)
Definition: VP1String.h:49
MissingEtCollHandle::m_d
Imp * m_d
Definition: MissingEtCollHandle.h:94
VP1HelperClassBase::messageDebug
void messageDebug(const QString &) const
Definition: VP1HelperClassBase.cxx:65
MissingEtCollHandle::m_cut_phi_allowall
bool m_cut_phi_allowall
Definition: MissingEtCollHandle.h:98
mapkey::sys
@ sys
Definition: TElectronEfficiencyCorrectionTool.cxx:42
MissingEtCollHandle::setMetSize
void setMetSize(int size)
Definition: MissingEtCollHandle.cxx:308
MissingEtCollHandle::load
virtual bool load()
Definition: MissingEtCollHandle.cxx:393
AODCollHandleBase::common
const AODSysCommonData * common() const
Definition: AODCollHandleBase.h:88
VP1SGContentsHelper::getKeys
QStringList getKeys() const
Definition: VP1SGContentsHelper.h:55
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
MissingEtCollHandle::m_cut_phi_allwillfail
bool m_cut_phi_allwillfail
Definition: MissingEtCollHandle.h:99
IVP1System
Definition: IVP1System.h:36
MissingEtCollHandle::hintNumberOfHandlesInEvent
virtual void hintNumberOfHandlesInEvent(unsigned)
Definition: MissingEtCollHandle.cxx:169
VP1StdCollection::setVisible
void setVisible(bool)
Definition: VP1StdCollection.cxx:160
MissingEtCollectionSettingsButton::saveState
QByteArray saveState() const
fill out with the state of the object (used for drag and drop etc)
Definition: MissingEtCollectionSettingsButton.cxx:335
beamspotman.n
n
Definition: beamspotman.py:731
MissingEtCollectionSettingsButton::setMaterialText
void setMaterialText(const QString &)
Definition: MissingEtCollectionSettingsButton.cxx:82
AODSystemController
Definition: AODSystemController.h:43
MissingEtCollHandle::setState
void setState(const QByteArray &)
Provide specific implementation.
Definition: MissingEtCollHandle.cxx:584
VP1StdCollection::visibilityChanged
void visibilityChanged(bool)
TEvent.h
AODCollHandleBase::recheckCutStatusOfAllNotVisibleHandles
void recheckCutStatusOfAllNotVisibleHandles()
Definition: AODCollHandleBase.cxx:177
AODCollHandleBase::extraWidgetsState
QByteArray extraWidgetsState() const
Definition: AODCollHandleBase.cxx:510
AODCollHandleBase::recheckCutStatusOfAllHandles
void recheckCutStatusOfAllHandles()
Definition: AODCollHandleBase.cxx:203
Init.h
MissingEtCollHandle::setCutAllowedPhi
void setCutAllowedPhi(const QList< VP1Interval > &)
Definition: MissingEtCollHandle.cxx:513
MissingEtCollHandle::Imp::randomColours
bool randomColours
Definition: MissingEtCollHandle.cxx:90
MissingEtCollectionSettingsButton.h
MissingEtHandle.h
VP1Deserialise
Definition: VP1Deserialise.h:44
VP1Interval.h
MissingEtCollHandle::getCutAllowedPhi
QList< VP1Interval > getCutAllowedPhi()
Definition: MissingEtCollHandle.h:75
MissingEtCollHandle::cut
virtual bool cut(AODHandleBase *)
Definition: MissingEtCollHandle.cxx:452
MissingEtCollHandle::getNextHandle
virtual AODHandleBase * getNextHandle()
Definition: MissingEtCollHandle.cxx:194
AODSysCommonData.h
MissingEtCollHandle::Imp
Definition: MissingEtCollHandle.cxx:73
xAOD::MissingETContainer_v1
Container for xAOD::MissingET_v1 objects.
Definition: MissingETContainer_v1.h:21
MissingEtCollHandle::Imp::scale
double scale
Definition: MissingEtCollHandle.cxx:89
AODCollHandleBase::setupSettingsFromController
void setupSettingsFromController(const AODSystemController *)
Definition: AODCollHandleBase.cxx:112
VP1HelperClassBase::systemBase
IVP1System * systemBase() const
Definition: VP1HelperClassBase.h:50
python.selection.number
number
Definition: selection.py:20
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
VP1Msg::messageVerbose
static void messageVerbose(const QString &)
Definition: VP1Msg.cxx:84
VP1SGContentsHelper
Definition: VP1SGContentsHelper.h:26
VP1MaterialButtonBase
Definition: VP1MaterialButton.h:25
MissingEtCollHandle::availableCollections
static QStringList availableCollections(IVP1System *)
Definition: MissingEtCollHandle.cxx:66
AODCollHandleBase.h
MissingEtCollHandle.h
SG::IAuxStore
Interface for non-const operations on an auxiliary store.
Definition: IAuxStore.h:48
MissingEtCollectionSettingsButton::cutAllowedPhi
QList< VP1Interval > cutAllowedPhi() const
Definition: MissingEtCollectionSettingsButton.cxx:404
DataVector::end
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
MissingEtCollHandle::Imp::updateGUICounter
int updateGUICounter
Definition: MissingEtCollHandle.cxx:76
AODCollHandleBase::collVisibilityChanged
void collVisibilityChanged(bool)
Definition: AODCollHandleBase.cxx:393
VP1Interval
Definition: VP1Interval.h:23
MissingEtCollHandle::Imp::possiblyUpdateGUI
void possiblyUpdateGUI()
Definition: MissingEtCollHandle.cxx:94
MissingEtCollHandle::handleIterationBegin
virtual void handleIterationBegin()
Definition: MissingEtCollHandle.cxx:187
IVP1System::updateGUI
void updateGUI()
Definition: IVP1System.cxx:262
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
AODHandleBase.h
MissingEtCollHandle::collSettingsButton
const MissingEtCollectionSettingsButton & collSettingsButton() const
Definition: MissingEtCollHandle.cxx:262
VP1StdCollection::visible
bool visible() const
Definition: VP1StdCollection.cxx:142
MissingEtCollHandle::MissingEtCollHandle
MissingEtCollHandle(AODSysCommonData *, const QString &name, xAOD::Type::ObjectType type)
Definition: MissingEtCollHandle.cxx:102
calibdata.cd
cd
Definition: calibdata.py:51
makeTransCanvas.text
text
Definition: makeTransCanvas.py:11
VP1HelperClassBase::message
void message(const QString &) const
Definition: VP1HelperClassBase.cxx:49
MissingEtCollHandle::Imp::collSettingsButton
MissingEtCollectionSettingsButton * collSettingsButton
Definition: MissingEtCollHandle.cxx:77
MissingEtCollHandle::init
virtual void init(VP1MaterialButtonBase *matBut=0)
Definition: MissingEtCollHandle.cxx:145
AODCollHandleBase::update3DObjectsOfAllHandles
void update3DObjectsOfAllHandles()
Definition: AODCollHandleBase.cxx:223
MissingEtHandle
Definition: MissingEtHandle.h:25
VP1SGAccessHelper
Definition: VP1SGAccessHelper.h:25
MissingEtCollHandle::persistifiableState
QByteArray persistifiableState() const
Provide specific implementation.
Definition: MissingEtCollHandle.cxx:551
AODCollHandleBase::recheckCutStatusOfAllVisibleHandles
void recheckCutStatusOfAllVisibleHandles()
Definition: AODCollHandleBase.cxx:144
python.compressB64.c
def c
Definition: compressB64.py:93
VP1SGAccessHelper.h
MissingEtCollHandle::addHandle
void addHandle(AODHandleBase *)
Definition: MissingEtCollHandle.cxx:175
MissingETContainer.h
IVP1System.h
query_example.des
des
Definition: query_example.py:9
AODCollHandleBase::name
QString name() const
Definition: AODCollHandleBase.cxx:130
DataVector::begin
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
MissingEtCollHandle::Imp::handlesList
QList< AODHandleBase * > handlesList
Definition: MissingEtCollHandle.cxx:82
VP1SGContentsHelper.h
MissingEtCollectionSettingsButton
Definition: MissingEtCollectionSettingsButton.h:17
MissingEtCollHandle
Definition: MissingEtCollHandle.h:27
MissingEtCollHandle::Imp::itHandlesEnd
std::vector< MissingEtHandle * >::iterator itHandlesEnd
Definition: MissingEtCollHandle.cxx:86