ATLAS Offline Software
VertexCollHandle.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 
7 // //
8 // Implementation of class VertexCollHandle //
9 // //
10 // Author: edward.moyse@cern.ch //
11 // Initial version: June 2015 //
12 // //
14 
15 //Local includes
16 #include "VertexHandle.h"
17 #include "VertexCollHandle.h"
18 #include "AODSysCommonData.h"
22 
23 //VP1 base includes
26 #include "VP1Base/IVP13DSystem.h"
28 #include "VP1Base/VP1Serialise.h"
29 #include "VP1Base/VP1Deserialise.h"
30 #ifndef BUILDVP1LIGHT
33 #endif
34 
35 //SoCoin
36 #include <Inventor/nodes/SoSeparator.h>
37 #include <Inventor/nodes/SoMaterial.h>
38 #include <Inventor/nodes/SoSwitch.h>
39 #include "Inventor/nodes/SoDrawStyle.h"
40 #include "Inventor/nodes/SoLightModel.h"
41 
42 //Athena
45 
46 //AOD
48 
49 //Qt
50 #include <QComboBox>
51 #include <QTreeWidgetItem>
52 #include <qdatetime.h>
53 #include <vector>
54 #include <QString>
55 #include <QDebug>
56 
57 #ifdef BUILDVP1LIGHT
58  #include <QSettings>
59  #include "xAODRootAccess/Init.h"
60  #include "xAODRootAccess/TEvent.h"
61 #endif // BUILDVP1LIGHT
62 
63 
64 //____________________________________________________________________
66 public:
68 
69  //Vector of iParticle handles:
70  std::vector<VertexHandle*> handles;
71  // QList of IParticle handles
72  QList<AODHandleBase*> handlesList;
73 
74  //For iteration:
77 
78  //Extra widgets;
80 
81  // int updateGUICounter;
82  //
83  // void possiblyUpdateGUI() {//Fixme: to IParticleCollHandleBase
84  // if (!((updateGUICounter++)%50)) {
85  // theclass->systemBase()->updateGUI();
86  // }
87  // }
88 };
89 
90 
91 
92 //____________________________________________________________________
95  m_d(new Imp), // Need to add back ObjectType once simple way to create string is added to xAODBase
96  m_cut_allowedY(VP1Interval(-std::numeric_limits<double>::infinity(), std::numeric_limits<double>::infinity())),
97  m_cut_allowedR(VP1Interval(-std::numeric_limits<double>::infinity(), std::numeric_limits<double>::infinity())),
98  m_cut_allowedZ(VP1Interval(-std::numeric_limits<double>::infinity(), std::numeric_limits<double>::infinity())),
99  m_cut_r_allowall(true),
100  m_cut_z_allowall(true),
101  m_cut_rz_allwillfail(false)
102 {
103  m_d->theclass = this;
104 
105  //The object names should not contain all sorts of funky chars (mat button style sheets wont work for instance):
106  QString safetext(text());
107  safetext.replace(' ','_');
108  safetext.replace('[','_');
109  safetext.replace(']','_');
110  safetext.replace('/','_');
111  safetext.replace('.','_');
112  safetext.replace(',','_');
113  safetext.replace('<','_');
114  safetext.replace('>','_');
115  safetext.replace('&','_');
116 }
117 
118 //____________________________________________________________________
120 {
121  messageVerbose("destructor start");
122 
123  // clean the vector<handle>
124  #ifndef BUILDVP1LIGHT
126  #endif
127 
128  // delete the Imp instance
129  delete m_d;
130 
131  messageVerbose("destructor end");
132 }
133 
134 //____________________________________________________________________
135 #if defined BUILDVP1LIGHT
137  {
138  return sys->getObjectList(xAOD::Type::Vertex);
139  }
140 #else
142  {
144  }
145 #endif // BUILDVP1LIGHT
146 
147 
148 //____________________________________________________________________
150 {
153  VP1StdCollection::init(m_d->collSettingsButton);//this call is required. Passing in m_d->collSettingsButton means we have the more complex button.
154  setupSettingsFromController(common()->controller());
155  connect(this,SIGNAL(visibilityChanged(bool)),this,SLOT(collVisibilityChanged(bool)));
156 
159 }
160 
162  //cuts
163  // R
164  connect(m_d->collSettingsButton,SIGNAL(cutAllowedRChanged(const VP1Interval&)),this,SLOT(setCutAllowedR(const VP1Interval&)));
166  // Y
167  connect(m_d->collSettingsButton,SIGNAL(cutAllowedYChanged(const VP1Interval&)),this,SLOT(setCutAllowedY(const VP1Interval&)));
169  // Z
170  connect(m_d->collSettingsButton,SIGNAL(cutAllowedZChanged(const VP1Interval&)),this,SLOT(setCutAllowedZ(const VP1Interval&)));
172  // size
173  connect(m_d->collSettingsButton,SIGNAL(vertexSizeChanged(int)),this,SLOT(setVertexSize(int)));
175 }
176 
178 {
179  // TODO: it is not used so far! Check Other collections and update accordingly
180 
181  // kinetic cuts
185  // other settings
187 }
188 
189 
191  if (!m_d->collSettingsButton){
192  messageVerbose("No collSettingsButton set! Can't call init(), so crash is imminent...");
193  }
194  return *m_d->collSettingsButton;
195 }
196 
197 //____________________________________________________________________
199 {
200  messageVerbose("loading Vertex collection");
201 
202  //Get collection:
203  const xAOD::VertexContainer * coll(nullptr);
204 
205  #if defined BUILDVP1LIGHT
206  // // Get the name of the application:
207  // const char* appName = "VP1Light";
208 
209  // // Initialize the environment:
210  // if( !xAOD::Init( appName ).isSuccess() ) {
211  // message("Failed to execute xAOD::Init");
212  // return false;
213  // }
214 
215  // Retrieve objects from the event
216  if( !(systemBase()->getEvent())->retrieve( coll, name().toStdString()).isSuccess() ) {
217  message("Error: Could not retrieve collection with key="+name());
218  return false;
219  }
220  #else
221  if (!VP1SGAccessHelper(systemBase()).retrieve(coll, name())) {
222  message("Error: Could not retrieve vertex collection with key="+name());
223  return false;
224  }
225  #endif //BUILDVP1LIGHT
226 
227  // // Retrieve the xAOD particles:
228  // const xAOD::VertexContainer* xaod = evtStore()->retrieve<const xAOD::VertexContainer>( m_VertexCollection );
229 
230  // Check that the auxiliary store association was made successfully:
231  if( ! coll->hasStore() ) {
232  message("No auxiliary store got associated to the Vertex container with key: " +name());
233  }
234 
235  // This is needed for now, until the issues around the DV code are
236  // sorted out...
237  const_cast< xAOD::VertexContainer* >( coll )->setStore(
238  ( SG::IAuxStore* ) coll->getConstStore() );
239  for (auto vertex : *coll) {
240  qInfo() << " (x, y, z) = (" << vertex->x() << ", " << vertex->y() << ", " << vertex->z() << ")"; // just to print out something
241  } // end for loop over vertices
242 
243  //Make appropriate vertex handles:
244  xAOD::VertexContainer::const_iterator it, itEnd = coll->end();
245  for ( it = coll->begin() ; it != itEnd; ++it) {
246  // m_d->possiblyUpdateGUI(); FIXME
247  systemBase()->updateGUI();
248  if (!*it) {
249  messageDebug("WARNING: Ignoring null Vertex pointer.");
250  continue;
251  }
252  addHandle(new VertexHandle(this,*it));
253  }
254  return true;
255 }
256 
257 
258 //____________________________________________________________________
259 QList<AODHandleBase*> VertexCollHandle::getHandlesList() const
260 {
261  messageVerbose("VertexCollHandle::getHandlesList()");
262  return m_d->handlesList;
263 }
264 
265 //____________________________________________________________________
267 {
268  messageVerbose("VertexCollHandle::cut()");
269 
270  VertexHandle* handle = dynamic_cast<VertexHandle*>(ah);
271  if (!handle) {
272  messageVerbose("VertexCollHandle::cut() - passing in handle of wrong type! Aborting.");
273  return false;
274  }
275 
277  messageVerbose("VertexCollHandle::cut() - returning false as m_cut_rz_allwillfail is set.");
278  return false;
279  }
280 
281  // FIXME
282  float vertexR = 0.0;
283  //float vertexZ = 0.0;
284 
285  float vertexX = handle->getPositionX();
286  float vertexY = handle->getPositionY();
287  float vertexZ = handle->getPositionZ();
288 
289  messageVerbose("Vertex R: " + QString::number(vertexR));
290  messageVerbose("Vertex x, y, z: " + QString::number(vertexX) + ", " + QString::number(vertexY)+ ", " + QString::number(vertexZ));
291 
292 
293 
295  {
296  messageVerbose("evaluating cuts...");
297 
298  // *** r CUT ***
299  messageVerbose("vertexR: " + QString::number(vertexR) + " - m_cut_allowedR: " + m_cut_allowedR.toString() + " - excludeInterval: " + QString::number(m_cut_allowedR.excludeInterval()) );
300  if (!m_cut_r_allowall && !m_cut_allowedR.contains(vertexR)){
301  messageVerbose("r cut not passed...");
302  return false;
303  }
304 
305  // *** Y CUT ***
306  messageVerbose("m_cut_allowedY: " + m_cut_allowedY.toString() + " - excludeInterval: " + QString::number(m_cut_allowedY.excludeInterval()) );
307  if (!m_cut_y_allowall && !m_cut_allowedY.contains(vertexY)){
308  messageVerbose("Y cut not passed...");
309  return false;
310  }
311 
312  // *** Z CUT ***
313  messageVerbose("m_cut_allowedZ: " + m_cut_allowedZ.toString() + " - excludeInterval: " + QString::number(m_cut_allowedZ.excludeInterval()) );
314  if (!m_cut_z_allowall && !m_cut_allowedZ.contains(vertexZ)){
315  messageVerbose("Z cut not passed...");
316  return false;
317  }
318  }
319 
320  messageVerbose("cut() - Returning true!");
321  return true;
322 }
323 
324 //____________________________________________________________________
326 {
327  m_d->handles.reserve(n);
328 }
329 
330 //____________________________________________________________________
332 {
333  VertexHandle* handle = dynamic_cast<VertexHandle* >(ah);
334  if (!handle) {
335  message("ERROR - wrong handle type passed to VertexCollHandle::addHandle!");
336  return;
337  }
338  m_d->handles.push_back(handle); // for the vector<handle>
339  m_d->handlesList << handle; // for the QList<handle>
340 }
341 
342 //____________________________________________________________________
344 {
345  m_d->itHandles = m_d->handles.begin();
346  m_d->itHandlesEnd = m_d->handles.end();
347 }
348 
349 //____________________________________________________________________
351  if (m_d->itHandles==m_d->itHandlesEnd)
352  return 0;
353  else
354  return *(m_d->itHandles++);
355 }
356 
357 //____________________________________________________________________
359 {
360 
361  messageVerbose("signal received in setCutAllowedR ("+allowedR.toString()+") with m_cut_allowedR = "+m_cut_allowedR.toString());
362  if (!allowedR.isSane())
363  return;
364 
365  if (m_cut_allowedR==allowedR)
366  return;
367 
368  m_cut_r_allowall = allowedR.isAllR();
370 
371  std::cout<<"m_cut_rz_allwillfail= "<<m_cut_rz_allwillfail<< " because allowedR.isEmpty()="<<allowedR.isEmpty()<<" || m_cut_allowedR.isEmpty() = "<<m_cut_allowedR.isEmpty()<<std::endl;
372 
373  if (!m_cut_allowedR.contains(allowedR)&&!allowedR.contains(m_cut_allowedR)) {
374  m_cut_allowedR = allowedR;
376  return;
377  }
378  bool relaxcut = allowedR.contains(m_cut_allowedR);
379  m_cut_allowedR = allowedR;
380  if (relaxcut)
382  else
384 }
385 
386 //____________________________________________________________________
388 {
389  messageVerbose("signal received in setCutAllowedY ("+allowedY.toString()+")");
390  if (!allowedY.isSane())
391  return;
392 
393  if (m_cut_allowedY==allowedY)
394  return;
395  m_cut_y_allowall = allowedY.isAllR();
397 
398  if (!m_cut_allowedY.contains(allowedY) && !allowedY.contains(m_cut_allowedY)) {
399  m_cut_allowedY = allowedY;
401  return;
402  }
403  bool relaxcut = allowedY.contains(m_cut_allowedY);
404  m_cut_allowedY = allowedY;
405  if (relaxcut)
407  else
409 }
410 //____________________________________________________________________
412 {
413  messageVerbose("signal received in setCutAllowedZ ("+allowedZ.toString()+")");
414  if (!allowedZ.isSane())
415  return;
416 
417  if (m_cut_allowedZ==allowedZ)
418  return;
419  m_cut_z_allowall = allowedZ.isAllR();
421 
422  if (!m_cut_allowedZ.contains(allowedZ)&&!allowedZ.contains(m_cut_allowedZ)) {
423  m_cut_allowedZ = allowedZ;
425  return;
426  }
427  bool relaxcut = allowedZ.contains(m_cut_allowedZ);
428  m_cut_allowedZ = allowedZ;
429  if (relaxcut)
431  else
433 }
434 
436 {
437  messageVerbose("signal received in vertexSizeChanged ("+str(size)+")");
438 
440 }
441 
442 //____________________________________________________________________
443 void VertexCollHandle::setState(const QByteArray&state)
444 {
445  VP1Deserialise des(state);
446  des.disableUnrestoredChecks();
447  if (des.version()!=0&&des.version()!=1) {
448  messageDebug("Warning: Ignoring state with wrong version");
449  return;
450  }
451  bool vis = des.restoreBool();
452 
453  QByteArray matState = des.restoreByteArray();
454  // m_d->matButton->restoreFromState(matState);
455  QByteArray extraWidgetState = des.version()>=1 ? des.restoreByteArray() : QByteArray();
456  setVisible(vis);
457 
458  if (extraWidgetState!=QByteArray())
459  setExtraWidgetsState(extraWidgetState);
460 }
461 
462 //____________________________________________________________________
464 {
465  messageDebug("VertexCollHandle::persistifiableState() - start...");
466 
467  // if (!m_d->matButton) {
468  // message("ERROR: persistifiableState() called before init()");
469  // return QByteArray();
470  // }
471  VP1Serialise serialise(1/*version*/);
472  serialise.disableUnsavedChecks();
473 
474  // SAVE THE CHECKED/UNCHECKED STATUS OF THE COLLECTION
475  serialise.save(visible());
476 
477  // SAVE THE MATERIAL BUTTON
478  // Q_ASSERT(m_d->matButton&&"Did you forget to call init() on this VP1StdCollection?");
479  // serialise.save(m_d->matButton->saveState());
480 
481  // SAVE THE EXTRA-STATES
482  serialise.save(extraWidgetsState());//version 1+
483 
484  messageDebug("VertexCollHandle::persistifiableState() - end.");
485  return serialise.result();
486 }
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
VertexCollHandle::Imp
Definition: VertexCollHandle.cxx:65
VP1Interval::isSane
bool isSane() const
VertexCollectionSettingsButton
Definition: VertexCollectionSettingsButton.h:14
VertexCollectionSettingsButton::cutAllowedY
VP1Interval cutAllowedY() const
Definition: VertexCollectionSettingsButton.cxx:429
DataModel_detail::const_iterator
Const iterator class for DataVector/DataList.
Definition: DVLIterator.h:82
VertexCollectionSettingsButton::vertexLightModel
SoLightModel * vertexLightModel() const
Definition: VertexCollectionSettingsButton.cxx:235
VertexCollHandle::m_cut_ry_allwillfail
bool m_cut_ry_allwillfail
Definition: VertexCollHandle.h:143
VP1Deserialise.h
VP1Serialise
Definition: VP1Serialise.h:45
AODHandleBase
Definition: AODHandleBase.h:43
xAOD::Vertex
Vertex_v1 Vertex
Define the latest version of the vertex class.
Definition: Event/xAOD/xAODTracking/xAODTracking/Vertex.h:16
AODCollHandleBase
Base class for all AOD object collections This class primarily handles setting up the interface,...
Definition: AODCollHandleBase.h:57
VertexCollectionSettingsButton::setMaterialText
void setMaterialText(const QString &)
Definition: VertexCollectionSettingsButton.cxx:78
VertexCollHandle::Imp::itHandlesEnd
std::vector< VertexHandle * >::iterator itHandlesEnd
Definition: VertexCollHandle.cxx:76
RoiUtil::serialise
void serialise(const std::vector< const IRoiDescriptor * > &rois, roiserial_type &s)
serialise an entire vector of IRoiDescriptors
Definition: RoiSerialise.cxx:45
VertexCollHandle::persistifiableState
virtual QByteArray persistifiableState() const
Provide specific implementation.
Definition: VertexCollHandle.cxx:463
ObjectType
ObjectType
Definition: BaseObject.h:11
VertexCollHandle::collSettingsButton
const VertexCollectionSettingsButton & collSettingsButton() const
Definition: VertexCollHandle.cxx:190
AODSysCommonData
Definition: AODSysCommonData.h:42
VP1ExtraSepLayerHelper.h
VP1HelperClassBase::messageVerbose
void messageVerbose(const QString &) const
Definition: VP1HelperClassBase.cxx:78
VP1StdCollection::collSwitch
SoSwitch * collSwitch() const
Add this somewhere in your scenegraph (do not add any children here!)
Definition: VP1StdCollection.cxx:204
fillPileUpNoiseLumi.connect
string connect
Definition: fillPileUpNoiseLumi.py:70
CSV_InDetExporter.new
new
Definition: CSV_InDetExporter.py:145
AODSystemController.h
skel.it
it
Definition: skel.GENtoEVGEN.py:423
VertexCollHandle::setVertexSize
void setVertexSize(int)
Definition: VertexCollHandle.cxx:435
VP1StdCollection::init
virtual void init(VP1MaterialButtonBase *button=0)
Definition: VP1StdCollection.cxx:73
VertexCollHandle::resetCachedValuesCuts
void resetCachedValuesCuts()
Definition: VertexCollHandle.cxx:177
VertexHandle::getPositionY
double getPositionY() const
Definition: VertexHandle.cxx:193
VertexHandle.h
VertexCollHandle::VertexCollHandle
VertexCollHandle(AODSysCommonData *, const QString &name, xAOD::Type::ObjectType)
Definition: VertexCollHandle.cxx:93
VertexCollHandle::m_cut_allowedZ
VP1Interval m_cut_allowedZ
Definition: VertexCollHandle.h:139
VertexCollHandle::setCutAllowedR
void setCutAllowedR(const VP1Interval &)
Definition: VertexCollHandle.cxx:358
VertexCollHandle::hintNumberOfHandlesInEvent
void hintNumberOfHandlesInEvent(unsigned)
Definition: VertexCollHandle.cxx:325
VP1String::str
static QString str(const QString &s)
Definition: VP1String.h:49
VertexCollHandle::load
virtual bool load()
Actually load the EDM objects.
Definition: VertexCollHandle.cxx:198
VP1HelperClassBase::messageDebug
void messageDebug(const QString &) const
Definition: VP1HelperClassBase.cxx:65
VP1Interval::excludeInterval
bool excludeInterval() const
mapkey::sys
@ sys
Definition: TElectronEfficiencyCorrectionTool.cxx:42
VertexCollHandle::Imp::handlesList
QList< AODHandleBase * > handlesList
Definition: VertexCollHandle.cxx:72
AODCollHandleBase::common
const AODSysCommonData * common() const
Definition: AODCollHandleBase.h:88
VP1SGContentsHelper::getKeys
QStringList getKeys() const
Definition: VP1SGContentsHelper.h:55
VP1QtInventorUtils.h
VertexCollectionSettingsButton::cutAllowedR
VP1Interval cutAllowedR() const
Definition: VertexCollectionSettingsButton.cxx:403
VP1LinAlgUtils.h
VertexCollHandle::cut
virtual bool cut(AODHandleBase *)
Definition: VertexCollHandle.cxx:266
VertexCollHandle::m_cut_z_allowall
bool m_cut_z_allowall
Definition: VertexCollHandle.h:142
VertexCollHandle::setCutAllowedZ
void setCutAllowedZ(const VP1Interval &)
Definition: VertexCollHandle.cxx:411
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
GeoPrimitives.h
VertexCollectionSettingsButton::cutAllowedZ
VP1Interval cutAllowedZ() const
Definition: VertexCollectionSettingsButton.cxx:454
VertexCollHandle::m_cut_y_allowall
bool m_cut_y_allowall
Definition: VertexCollHandle.h:140
VertexCollHandle::addHandle
void addHandle(AODHandleBase *)
Definition: VertexCollHandle.cxx:331
IVP1System
Definition: IVP1System.h:36
VertexCollHandle::setupSettingsFromControllerSpecific
virtual void setupSettingsFromControllerSpecific(const AODSystemController *)
For extensions specific to this collection.
Definition: VertexCollHandle.cxx:161
VP1StdCollection::setVisible
void setVisible(bool)
Definition: VP1StdCollection.cxx:160
VertexCollHandle.h
beamspotman.n
n
Definition: beamspotman.py:731
AODSystemController
Definition: AODSystemController.h:43
IVP13DSystem.h
VertexCollHandle::m_cut_rz_allwillfail
bool m_cut_rz_allwillfail
Definition: VertexCollHandle.h:144
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
VP1StdCollection::text
QString text() const
Definition: VP1StdCollection.cxx:132
VertexCollHandle::Imp::handles
std::vector< VertexHandle * > handles
Definition: VertexCollHandle.cxx:70
VP1AODSystem.h
xAOD::double
double
Definition: CompositeParticle_v1.cxx:159
VP1Deserialise
Definition: VP1Deserialise.h:44
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
VertexCollHandle::getHandlesList
QList< AODHandleBase * > getHandlesList() const
Definition: VertexCollHandle.cxx:259
AODSysCommonData.h
VertexCollHandle::Imp::collSettingsButton
VertexCollectionSettingsButton * collSettingsButton
Definition: VertexCollHandle.cxx:79
VertexCollHandle::m_d
Imp * m_d
Definition: VertexCollHandle.h:133
VP1Interval::isEmpty
bool isEmpty() const
EventPrimitives.h
VertexCollHandle::m_cut_allowedY
VP1Interval m_cut_allowedY
Definition: VertexCollHandle.h:137
VertexCollHandle::availableCollections
static QStringList availableCollections(IVP1System *)
Definition: VertexCollHandle.cxx:141
AODCollHandleBase::setupSettingsFromController
void setupSettingsFromController(const AODSystemController *)
Definition: AODCollHandleBase.cxx:112
VertexCollHandle
Definition: VertexCollHandle.h:42
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
VertexCollHandle::~VertexCollHandle
virtual ~VertexCollHandle()
Definition: VertexCollHandle.cxx:119
VP1Interval::contains
bool contains(const double &x) const
VertexHandle::getPositionZ
double getPositionZ() const
Definition: VertexHandle.cxx:197
VertexCollectionSettingsButton::vertexDrawStyle
SoDrawStyle * vertexDrawStyle() const
Definition: VertexCollectionSettingsButton.cxx:230
VP1Interval::toString
QString toString() const
VP1SGContentsHelper
Definition: VP1SGContentsHelper.h:26
VP1MaterialButtonBase
Definition: VP1MaterialButton.h:25
VertexCollHandle::cleanupPtrContainer
void cleanupPtrContainer(T &) const
Definition: VertexCollHandle.h:148
VertexCollHandle::handleIterationBegin
void handleIterationBegin()
Definition: VertexCollHandle.cxx:343
VertexCollectionSettingsButton.h
SG::IAuxStore
Interface for non-const operations on an auxiliary store.
Definition: IAuxStore.h:48
VertexCollHandle::setCutAllowedY
void setCutAllowedY(const VP1Interval &)
Definition: VertexCollHandle.cxx:387
VertexHandle
Definition: VertexHandle.h:39
VertexCollHandle::m_cut_r_allowall
bool m_cut_r_allowall
Definition: VertexCollHandle.h:141
AODCollHandleBase::collVisibilityChanged
void collVisibilityChanged(bool)
Definition: AODCollHandleBase.cxx:393
Trk::vertex
@ vertex
Definition: MeasurementType.h:21
VP1Interval
Definition: VP1Interval.h:23
VertexContainer.h
VertexCollHandle::getNextHandle
AODHandleBase * getNextHandle()
Definition: VertexCollHandle.cxx:350
IVP1System::updateGUI
void updateGUI()
Definition: IVP1System.cxx:262
VertexHandle::getPositionX
double getPositionX() const
Definition: VertexHandle.cxx:189
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
VP1Interval::isAllR
bool isAllR() const
VP1StdCollection::visible
bool visible() const
Definition: VP1StdCollection.cxx:142
calibdata.cd
cd
Definition: calibdata.py:51
VP1HelperClassBase::message
void message(const QString &) const
Definition: VP1HelperClassBase.cxx:49
AODCollHandleBase::update3DObjectsOfAllHandles
void update3DObjectsOfAllHandles()
Definition: AODCollHandleBase.cxx:223
VP1SGAccessHelper
Definition: VP1SGAccessHelper.h:25
VertexCollHandle::init
virtual void init(VP1MaterialButtonBase *matBut=0)
Definition: VertexCollHandle.cxx:149
VertexCollHandle::setState
virtual void setState(const QByteArray &)
Provide specific implementation.
Definition: VertexCollHandle.cxx:443
VertexCollHandle::Imp::theclass
VertexCollHandle * theclass
Definition: VertexCollHandle.cxx:67
AODCollHandleBase::recheckCutStatusOfAllVisibleHandles
void recheckCutStatusOfAllVisibleHandles()
Definition: AODCollHandleBase.cxx:144
VP1SGAccessHelper.h
VertexCollHandle::Imp::itHandles
std::vector< VertexHandle * >::iterator itHandles
Definition: VertexCollHandle.cxx:75
VertexCollHandle::m_cut_allowedR
VP1Interval m_cut_allowedR
Definition: VertexCollHandle.h:138
query_example.des
des
Definition: query_example.py:9
AODCollHandleBase::name
QString name() const
Definition: AODCollHandleBase.cxx:130
VP1SGContentsHelper.h
VertexCollectionSettingsButton::vertexSize
int vertexSize() const
Definition: VertexCollectionSettingsButton.cxx:240