ATLAS Offline Software
VP1Deserialise.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 
7 // //
8 // Implementation of class VP1Deserialise //
9 // //
10 // Author: Thomas H. Kittelmann (Thomas.Kittelmann@cern.ch) //
11 // Initial version: June 2008 //
12 // //
14 
15 #include "VP1Base/VP1Deserialise.h"
24 //#include "VP1AODSystems/JetCollectionSettingsButton.h"
25 
26 #include <Inventor/nodes/SoMaterial.h>
27 
28 #include <QSet>
29 #include <QBuffer>
30 #include <QByteArray>
31 #include <QDataStream>
32 
33 #include <QCheckBox>
34 #include <QGroupBox>
35 #include <QComboBox>
36 #include <QLineEdit>
37 #include <QDoubleSpinBox>
38 #include <QSpinBox>
39 #include <QSlider>
40 #include <QToolBox>
41 #include <QRadioButton>
42 
43 //____________________________________________________________________
45 public:
48  QByteArray byteArray;
49  QBuffer * buffer;
50  QDataStream * state;
52  qint32 version;
53 
54  QSet<QWidget*> handledWidgets;
55  QSet<QWidget*> ignoredWidgets;
56 
58  void block(QWidget*w) {
59  assert(!widgetNeedingUnblock);
60  if (w&&!w->signalsBlocked()) {
61  w->blockSignals(true);
63  }
64  }
65  void unblock() {
67  widgetNeedingUnblock->blockSignals(false);
69  }
70  }
71 
72  void handle(QWidget*w) {
73  if (!w)
74  return;
75  if (handledWidgets.contains(w))
76  theclass->message("ERROR: Handled widget more than once: Type="
77  +QString(w->metaObject()->className())
78  +", name="+w->objectName());
79  handledWidgets.insert(w);
80  }
81  void handle(const QWidget*w) {
82  handle(const_cast<QWidget*>(w)); // explicitly cast away const
83  }
84  bool expectsPersistification(QWidget*w);
85 
86  static unsigned numberOfInstantiations;
87 };
88 
90 
91 //____________________________________________________________________
93 {
95 }
96 
97 //____________________________________________________________________
99 {
101 }
102 
103 //____________________________________________________________________
105  : VP1HelperClassBase(sys,"VP1Deserialise"), m_d(new Imp(this))
106 {
108 
109  m_d->byteArray = ba;
110  m_d->buffer = new QBuffer(&(m_d->byteArray));
111  if (!m_d->buffer->open(QIODevice::ReadOnly)) {
112  delete m_d->buffer;
113  m_d->buffer = 0;
114  m_d->version = -1;
115  //Fixme: ensure that other methods do not do anything (or are not called!)
116  //Ensure that we are at end of stream when finished - and print versions (data+preferred).
117  } else {
118  m_d->state = new QDataStream(m_d->buffer);
119  m_d->version = restoreInt();
120  }
121 }
122 
123 //____________________________________________________________________
125 {
126  if (!m_d->checkedUnused)
127  message("WARNING: warnUnrestored(..) was never called!");
128  if (!atEnd())
129  message("Destructor WARNING: Buffer not at end!");
130  m_d->buffer->close();
131  delete m_d->state;
132  m_d->state = 0;
133  delete m_d->buffer;
134  m_d->buffer = 0;
135  delete m_d;
136 }
137 
138 //____________________________________________________________________
140 {
141  return m_d->buffer->atEnd();
142 }
143 
144 //____________________________________________________________________
146 {
147  return m_d->version;
148 }
149 
150 //____________________________________________________________________
151 QDataStream * VP1Deserialise::stream()
152 {
153  return m_d->state;
154 }
155 
156 //____________________________________________________________________
157 void VP1Deserialise::restore( SoMaterial* m )
158 {
159  if(VP1Msg::debug()){
160  messageDebug("VP1Deserialise::restore(SoMaterial)");
161  }
162  QByteArray ba(restoreByteArray());
163  if (!m||ba.isEmpty())
164  return;
166 }
167 
168 //____________________________________________________________________
170 {
171  if(VP1Msg::debug()){
172  messageDebug("VP1Deserialise::restore(VP1MaterialButton)");
173  }
174  m_d->handle(mb);
175  SoMaterial * m(0);
176  QList<SoMaterial*> mats = mb ? mb->handledMaterials() : QList<SoMaterial*>();
177  bool tempmat = mats.isEmpty() || !mats.at(0);
178  m = tempmat ? new SoMaterial : mats.at(0);
179  m->ref();
180  restore(m);
181  if (mb) {
182  m_d->block(mb);
183  mb->copyValuesFromMaterial(m);
184  m_d->unblock();
185  }
186  if (tempmat)
187  m->unref();
188  else
189  m->unrefNoDelete();
190 }
191 
192 //____________________________________________________________________
194 {
195  QColor c;
196  (*(m_d->state)) >> c;
197  if(VP1Msg::debug()){
198  messageDebug("VP1Deserialise::restore(QColor) - name: " + c.name());
199  }
200  if (VP1Msg::verbose())
201  messageVerbose("Restoring color "+str(c));
202  return c;
203 }
204 
205 //____________________________________________________________________
207 {
208  if(VP1Msg::debug()){
209  messageDebug("VP1Deserialise::restore(VP1ColorSelectButton) - name: " + cb->objectName());
210  }
211  m_d->handle(cb);
212  QColor c = restoreColor();
213  if (c.isValid()&&cb&&cb->color()!=c) {
214  m_d->block(cb);
215  cb->setColor(c);
216  m_d->unblock();
217  }
218 }
219 
220 //____________________________________________________________________
222 {
223  if(VP1Msg::debug()){
224  messageDebug("VP1Deserialise::restore(PhiSectionWidget) - name: " + phi->objectName());
225  }
226  m_d->handle(phi);
227  QByteArray ba(restoreByteArray());
228  if (phi&&ba != QByteArray()) {
229  m_d->block(phi);
230  phi->setState(std::move(ba));
231  m_d->unblock();
232  }
233 }
234 
235 //____________________________________________________________________
237 {
238  QByteArray ba;
239  (*(m_d->state)) >> ba;
240  if (VP1Msg::verbose()){
241  messageVerbose("Restoring byte array (length = "+QString::number(ba.count())+")");
242  }
243  return ba;
244 }
245 
246 //____________________________________________________________________
247 void VP1Deserialise::restore(QCheckBox *cb )
248 {
249  if(VP1Msg::debug()){
250  messageDebug("VP1Deserialise::restore(QCheckBox) - name: " + cb->objectName());
251  }
252 
253  m_d->handle(cb);
254 
255  bool b = restoreBool();
256 
257  if(VP1Msg::debug()){
258  messageDebug("bool b: "+QString::number(b));
259  messageDebug("bool cb: "+QString::number( cb->isChecked() ));
260  }
261 
262  if (cb->isChecked()!=b) {
263  m_d->block(cb);
264  if(VP1Msg::debug()){
265  messageDebug("setting - checked: "+QString::number( b ));
266  }
267  cb->setChecked(b);
268  m_d->unblock();
269  }
270 }
271 
272 //____________________________________________________________________
273 void VP1Deserialise::restore(QGroupBox*gb)
274 {
275  if(VP1Msg::debug()){
276  messageDebug("VP1Deserialise::restore(QGroupBox) - name: " + gb->objectName());
277  }
278  if (!gb->isCheckable())
279  message("WARNING: Asked to handled GroupBox which is not checkable: "+gb->objectName());
280  m_d->handle(gb);
281  bool b = restoreBool();
282  if (gb->isChecked()!=b) {
283  m_d->block(gb);
284  gb->setChecked(b);
285  m_d->unblock();
286  }
287 }
288 
289 //____________________________________________________________________
290 void VP1Deserialise::restore(QComboBox *cb)
291 {
292  if(VP1Msg::debug()){
293  messageDebug("VP1Deserialise::restore(QComboBox) - name: " + cb->objectName());
294  }
295  m_d->handle(cb);
296  QString t = restoreString();
297  if (t.isEmpty())
298  return;
299  int i = cb->findText(t);
300  if (i<0||i>cb->count()-1)
301  return;
302  if (cb->currentIndex()!=i) {
303  m_d->block(cb);
304  cb->setCurrentIndex(i);
305  m_d->unblock();
306  }
307 }
308 
309 //____________________________________________________________________
310 void VP1Deserialise::restore(QLineEdit* le)
311 {
312  if(VP1Msg::debug()){
313  messageDebug("VP1Deserialise::restore(QLineEdit) - name: " + le->objectName());
314  }
315  m_d->handle(le);
316  QString s = restoreString();
317  if (s!=le->text()) {
318  m_d->block(le);
319  le->setText(s);
320  m_d->unblock();
321  }
322 }
323 
324 //____________________________________________________________________
325 void VP1Deserialise::restore(QDoubleSpinBox *sb, const double& unit )
326 {
327  if(VP1Msg::debug()){
328  messageDebug("VP1Deserialise::restore(QDoubleSpinBox) - name: " + sb->objectName());
329  }
330  m_d->handle(sb);
331  double dbl = (unit == 1.0 ? restoreDouble() : restoreDouble()/unit);
332  dbl = std:: max(std::min(dbl,sb->maximum()),sb->minimum());
333  if (sb->value()!=dbl) {
334  m_d->block(sb);
335  sb->setValue(dbl);
336  m_d->unblock();
337  }
338 }
339 
340 //____________________________________________________________________
342 {
343  if(VP1Msg::debug()){
344  messageDebug("VP1Deserialise::restore(QSpinBox) - name: " + sb->objectName());
345  }
346  m_d->handle(sb);
347  qint32 i = restoreInt();
348  i = std:: max(std::min(i,sb->maximum()),sb->minimum());
349  if (sb->value()!=i) {
350  m_d->block(sb);
351  sb->setValue(i);
352  m_d->unblock();
353  }
354 }
355 
356 //____________________________________________________________________
358 {
359  if(VP1Msg::debug()){
360  messageDebug("VP1Deserialise::restore(QSlider) - name: " + s->objectName());
361  }
362  m_d->handle(s);
363  qint32 i = restoreInt();
364  i = std:: max(std::min(i,s->maximum()),s->minimum());
365  if (s->value()!=i) {
366  m_d->block(s);
367  s->setValue(i);
368  m_d->unblock();
369  }
370 }
371 
372 //____________________________________________________________________
374 {
375  if(VP1Msg::debug()){
376  messageDebug("VP1Deserialise::restore(QToolBox) - name: " + tb->objectName());
377  }
378  m_d->handle(tb);
379  qint32 i = restoreInt();
380  if (i>=0&&i<tb->count()&&i!=tb->currentIndex()) {
381  m_d->block(tb);
382  tb->setCurrentIndex(i);
383  m_d->unblock();
384  }
385 }
386 
387 //____________________________________________________________________
389 {
390  if(VP1Msg::debug()){
391  messageDebug("VP1Deserialise::restore(QToolBox) - name: " + tb->objectName());
392  }
393  m_d->handle(tb);
394  QString s = restoreString();
395  int itarget (-1);
396  for (int i = 0; i < tb->count(); ++i) {
397  if (tb->itemText(i)==s) {
398  itarget = i;
399  break;
400  }
401  }
402  if (itarget>0&&itarget<tb->count()&&itarget!=tb->currentIndex()) {
403  m_d->block(tb);
404  tb->setCurrentIndex(itarget);
405  m_d->unblock();
406  }
407 }
408 
409 
410 //____________________________________________________________________
412 {
413  QString t;
414  (*(m_d->state)) >> t;
415  if (VP1Msg::verbose()){
416  messageVerbose("Restoring string "+t);
417  }
418  return t;
419 }
420 //____________________________________________________________________
422 {
423  bool b;
424  (*(m_d->state)) >> b;
425  if (VP1Msg::verbose()){
426  messageVerbose("Restoring bool "+str(b));
427  }
428  return b;
429 }
430 //____________________________________________________________________
432 {
433  double dbl;
434  (*(m_d->state)) >> dbl;
435  if (VP1Msg::verbose()){
436  messageVerbose("Restoring double "+str(dbl));
437  }
438  return dbl;
439 }
440 
441 //____________________________________________________________________
443 {
444  qint32 i;
445  (*(m_d->state)) >> i;
446  if (VP1Msg::verbose()){
447  messageVerbose("Restoring int "+str(i));
448  }
449  return i;
450 }
451 
452 //____________________________________________________________________
453 void VP1Deserialise::restore( QRadioButton * rb0,
454  QRadioButton * rb1,
455  QRadioButton * rb2,
456  QRadioButton * rb3,
457  QRadioButton * rb4,
458  QRadioButton * rb5,
459  QRadioButton * rb6,
460  QRadioButton * rb7,
461  QRadioButton * rb8,
462  QRadioButton * rb9 )
463 {
464  qint32 ichecked = restoreInt();
465  QList<QRadioButton *> l;
466  l << rb0 << rb1 << rb2 << rb3 << rb4 << rb5 << rb6 << rb7 << rb8 << rb9;
467  for (qint32 i = 0; i < l.count(); ++i) {
468  if (l.at(i)) {
469  if(VP1Msg::debug()){
470  messageDebug("VP1Deserialise::restore(QRadioButton) - name: " + l.at(i)->objectName());
471  }
472  m_d->handle(l.at(i));
473  }
474  }
475  //We only change any state if we have a pointer to the one needing to be checked:
476  if (ichecked<0||ichecked>=l.count()||!l.at(ichecked))
477  return;
478  for (qint32 i = 0; i < l.count(); ++i) {
479  QRadioButton * rb = l.at(i);
480  if (rb&&rb->isChecked()!=(i==ichecked)) {
481  m_d->block(rb);
482  rb->setChecked(i==ichecked);
483  m_d->unblock();
484  }
485  }
486 }
487 
488 //____________________________________________________________________
490 {
491  if(VP1Msg::debug()){
492  messageDebug("VP1Deserialise::restore(VP1CollectionWidget) - name: " + cw->objectName());
493  messageDebug("VP1Deserialise::restore(VP1CollectionWidget)- start...");
494  }
495  m_d->handle(cw);
496  ignoreWidget(cw);//To ignore all children of the collection widget.
497  QByteArray ba(restoreByteArray());
498  QBuffer buffer(&ba);
499  buffer.open(QIODevice::ReadOnly);
500  QDataStream state(&buffer);
501  qint32 version;
502  state >> version;
503  if (version!=0)
504  return;//We ignore wrong versions silently here.
505  VP1CollStates cwstates;
506  state >> cwstates;
507  buffer.close();
508  m_d->block(cw);
509  cw->addStateInfo(cwstates,true/*overwrite existing*/);
510  m_d->unblock();
511  if(VP1Msg::debug()){
512  messageDebug("VP1Deserialise::restore(VP1CollectionWidget)- end.");
513  }
514 }
515 
516 //____________________________________________________________________
518 {
519  if(VP1Msg::debug()){
520  messageDebug("VP1Deserialise::restore(VP1CollectionSettingsButtonBase) - name: " + w->objectName());
521  messageDebug("VP1Deserialise::restore(VP1CollectionSettingsButtonBase)- start...");
522  }
523  m_d->handle(w);
524  ignoreWidget(w);//To ignore all children of the widget.
525 
526  QByteArray ba = restoreByteArray();
527  if (w&&ba!=QByteArray()) {
528  m_d->block(w);
529  w->restoreFromState(ba);
530  m_d->unblock();
531  }
532  if(VP1Msg::debug()){
533  messageDebug("VP1Deserialise::restore(VP1CollectionSettingsButtonBase)- end.");
534  }
535 }
537 //void VP1Deserialise::restore(JetCollectionSettingsButton*w)
538 //{
539 // m_d->handle(w);
540 // ignoreWidget(w);//To ignore all children of the widget.
541 //
542 // QByteArray ba = restoreByteArray();
543 // if (w&&ba!=QByteArray()) {
544 // m_d->block(w);
545 // w->restoreFromState(ba);
546 // m_d->unblock();
547 // }
548 //}
549 
550 
551 
552 //____________________________________________________________________
554 {
555  if(VP1Msg::debug()){
556  messageDebug("VP1Deserialise::restore(VP1EtaPhiCutWidget) - name: " + w->objectName());
557  }
558  m_d->handle(w);
559  ignoreWidget(w);//To ignore all children of the widget.
560 
561  QByteArray ba = restoreByteArray();
562  if (w&&ba!=QByteArray()) {
563  m_d->block(w);
564  w->restoreFromState(ba);
565  m_d->unblock();
566  }
567 }
568 
569 
570 
571 
572 //____________________________________________________________________
574 {
575  if(VP1Msg::debug()){
576  messageDebug("VP1Deserialise::restore(VP1DrawOptionsWidget) - name: " + w->objectName());
577  }
578  m_d->handle(w);
579  ignoreWidget(w);//To ignore all children of the widget.
580 
581  QByteArray ba = restoreByteArray();
582  if (w&&ba!=QByteArray()) {
583  m_d->block(w);
584  w->applyState(ba);
585  m_d->unblock();
586  }
587 }
588 
589 //____________________________________________________________________
591 {
592  bool b;
593  (*(m_d->state)) >> b;
594  if (VP1Msg::verbose()){
595  messageVerbose("Ignoring bool "+str(b));
596  }
597 }
598 
599 //____________________________________________________________________
601 {
602  qint32 i;
603  (*(m_d->state)) >> i;
604  if (VP1Msg::verbose()){
605  messageVerbose("Ignoring int "+str(i));
606  }
607 }
608 
609 //____________________________________________________________________
611 {
612  double dbl;
613  (*(m_d->state)) >> dbl;
614  if (VP1Msg::verbose()){
615  messageVerbose("Ignoring double "+str(dbl));
616  }
617 }
618 
619 //____________________________________________________________________
621 {
622  QString t;
623  (*(m_d->state)) >> t;
624  if (VP1Msg::verbose()){
625  messageVerbose("Ignoring string "+t);
626  }
627 }
628 
629 //____________________________________________________________________
631 {
632  QByteArray ba;
633  (*(m_d->state)) >> ba;
634  if (VP1Msg::verbose()){
635  messageVerbose("Ignoring byte array (length = "+QString::number(ba.count())+")");
636  }
637 }
638 
639 //____________________________________________________________________
641 {
642  QPair<int,QList<int> > state;
643  (*(m_d->state)) >> state;
644  if (VP1Msg::verbose()){
645  messageVerbose("Ignoring obsolete phi section widget state");
646  }
647 }
648 
649 //____________________________________________________________________
651 {
652  if(VP1Msg::debug()){
653  messageDebug("VP1Deserialise::ignoreWidget(QWidget) - name: " + w->objectName());
654  }
655  if (w)
656  m_d->ignoredWidgets.insert(w);
657 }
658 
659 //____________________________________________________________________
661 {
662  m_d->handle(w);
663 }
664 
665 //____________________________________________________________________
667 {
668  //NB: Same code as in VP1Serialise::Imp::expectsPersistification
669  if (!w)
670  return false;
671 
672  //Fixme: Something faster than string based? Or only do this in verbose mode?
673 
674  if (w->inherits("QGroupBox"))
675  return static_cast<QGroupBox*>(w)->isCheckable();
676 
677  return w->inherits("QCheckBox")
678  || w->inherits("QRadioButton")
679  || w->inherits("QComboBox")
680  || w->inherits("QAbstractSpinBox")
681  || w->inherits("QSlider")
682  || w->inherits("QToolBox")
683  || w->inherits("PhiSectionWidget")
684  || w->inherits("VP1EtaPhiCutWidget")
685  || w->inherits("VP1DrawOptionsWidget")
686  || w->inherits("QLineEdit")
687  || w->inherits("VP1ColorSelectButton")
688  || w->inherits("VP1MaterialButton");
689 }
690 
691 //____________________________________________________________________
693 {
694  m_d->checkedUnused = true;
695 }
696 
697 //____________________________________________________________________
698 void VP1Deserialise::warnUnrestored(QObject* object)
699 {
700  //NB: Same code as in VP1Serialise::warnUnsaved
701 
702  if (!m_d->checkedUnused)
703  m_d->checkedUnused = true;
704 
705  if (!object)
706  return;
707 
708  if (object->isWidgetType()&&m_d->ignoredWidgets.contains(static_cast<QWidget*>(object)))
709  return;
710 
711  if (object->isWidgetType()&&!object->objectName().startsWith("qt_")) {
712  QWidget * wid = static_cast<QWidget*>(object);
713  if (!m_d->handledWidgets.contains(wid)&&m_d->expectsPersistification(wid)) {
714  QString s("WARNING Unrestored widget of type: "+QString(wid->metaObject()->className())+" and object name = "+wid->objectName());
715  if (VP1Msg::verbose()){
716  message(s);
717  }
718  if(VP1Msg::debug()){
719  messageDebug(s);
720  }
721  }
722  }
723  //Call recursively on all "children":
724  for (QObject* o : object->children())
725  warnUnrestored(static_cast<QWidget*>(o));
726 }
VP1CollStates
QMap< QByteArray, QByteArray > VP1CollStates
Definition: VP1Collection.h:27
VP1Deserialise::~VP1Deserialise
virtual ~VP1Deserialise()
Definition: VP1Deserialise.cxx:124
VP1Deserialise::VP1Deserialise
VP1Deserialise(const QByteArray &, IVP1System *sys=0)
Definition: VP1Deserialise.cxx:104
VP1Deserialise.h
VP1Deserialise::Imp::ignoredWidgets
QSet< QWidget * > ignoredWidgets
Definition: VP1Deserialise.cxx:55
VP1Deserialise::ignoreInt
void ignoreInt()
Definition: VP1Deserialise.cxx:600
phi
Scalar phi() const
phi method
Definition: AmgMatrixBasePlugin.h:67
WriteCellNoiseToCool.rb
rb
Definition: WriteCellNoiseToCool.py:229
VP1MaterialButton.h
VP1Deserialise::ignoreString
void ignoreString()
Definition: VP1Deserialise.cxx:620
max
constexpr double max()
Definition: ap_fixedTest.cxx:33
VP1Deserialise::Imp::unblock
void unblock()
Definition: VP1Deserialise.cxx:65
min
constexpr double min()
Definition: ap_fixedTest.cxx:26
VP1Deserialise::Imp::checkedUnused
bool checkedUnused
Definition: VP1Deserialise.cxx:51
VP1MaterialButton
Definition: VP1MaterialButton.h:46
VP1HelperClassBase::messageVerbose
void messageVerbose(const QString &) const
Definition: VP1HelperClassBase.cxx:78
VP1Deserialise::disableUnrestoredChecks
void disableUnrestoredChecks()
Definition: VP1Deserialise.cxx:692
VP1ColorSelectButton::setColor
void setColor(const QColor &)
Definition: VP1ColorSelectButton.cxx:95
CSV_InDetExporter.new
new
Definition: CSV_InDetExporter.py:145
VP1DrawOptionsWidget.h
VP1CollectionSettingsButtonBase.h
VP1Deserialise::restoreByTitle
void restoreByTitle(QToolBox *)
Definition: VP1Deserialise.cxx:388
VP1Msg::debug
static bool debug()
Definition: VP1Msg.h:32
VP1Deserialise::Imp::theclass
VP1Deserialise * theclass
Definition: VP1Deserialise.cxx:47
VP1Deserialise::Imp::byteArray
QByteArray byteArray
Definition: VP1Deserialise.cxx:48
UploadAMITag.l
list l
Definition: UploadAMITag.larcaf.py:157
VP1Deserialise::Imp::Imp
Imp(VP1Deserialise *tc)
Definition: VP1Deserialise.cxx:46
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
VP1Deserialise::Imp::version
qint32 version
Definition: VP1Deserialise.cxx:52
VP1Deserialise::restoreDouble
double restoreDouble()
Definition: VP1Deserialise.cxx:431
VP1Deserialise::decrementNumberOfInstantiations
static void decrementNumberOfInstantiations()
Definition: VP1Deserialise.cxx:98
VP1String::str
static QString str(const QString &s)
Definition: VP1String.h:49
VP1EtaPhiCutWidget
Definition: VP1EtaPhiCutWidget.h:26
VP1ColorSelectButton
Definition: VP1ColorSelectButton.h:20
VP1HelperClassBase::messageDebug
void messageDebug(const QString &) const
Definition: VP1HelperClassBase.cxx:65
VP1Deserialise::Imp::handle
void handle(QWidget *w)
Definition: VP1Deserialise.cxx:72
mapkey::sys
@ sys
Definition: TElectronEfficiencyCorrectionTool.cxx:42
XMLtoHeader.count
count
Definition: XMLtoHeader.py:84
VP1QtInventorUtils::deserialiseSoMaterial
static bool deserialiseSoMaterial(QByteArray &, SoMaterial *&)
Definition: VP1QtInventorUtils.cxx:1180
VP1Deserialise::Imp::buffer
QBuffer * buffer
Definition: VP1Deserialise.cxx:49
VP1EtaPhiCutWidget.h
VP1CollectionWidget.h
VP1QtInventorUtils.h
VP1Deserialise::atEnd
bool atEnd() const
Definition: VP1Deserialise.cxx:139
VP1Deserialise::Imp::state
QDataStream * state
Definition: VP1Deserialise.cxx:50
VP1Deserialise::version
qint32 version() const
Definition: VP1Deserialise.cxx:145
Execution.tb
tb
Definition: Execution.py:15
IVP1System
Definition: IVP1System.h:36
createCoolChannelIdFile.buffer
buffer
Definition: createCoolChannelIdFile.py:11
VP1Deserialise::Imp::handle
void handle(const QWidget *w)
Definition: VP1Deserialise.cxx:81
VP1Deserialise::restoreBool
bool restoreBool()
Definition: VP1Deserialise.cxx:421
VP1CollectionWidget::addStateInfo
void addStateInfo(const VP1CollStates &, bool overwritesExisting=true)
Definition: VP1CollectionWidget.cxx:289
lumiFormat.i
int i
Definition: lumiFormat.py:85
VP1Deserialise::stream
QDataStream * stream()
Definition: VP1Deserialise.cxx:151
VP1CollectionSettingsButtonBase
Definition: VP1CollectionSettingsButtonBase.h:17
PhiSectionWidget.h
VP1Deserialise::ignoreBool
void ignoreBool()
Definition: VP1Deserialise.cxx:590
VP1ColorSelectButton::color
QColor color() const
Definition: VP1ColorSelectButton.cxx:108
VP1ColorSelectButton.h
VP1Deserialise
Definition: VP1Deserialise.h:44
PhiSectionWidget
Definition: PhiSectionWidget.h:26
VP1HelperClassBase
Definition: VP1HelperClassBase.h:28
VP1Deserialise::Imp::block
void block(QWidget *w)
Definition: VP1Deserialise.cxx:58
VP1Deserialise::Imp::numberOfInstantiations
static unsigned numberOfInstantiations
Definition: VP1Deserialise.cxx:86
VP1Deserialise::numberOfInstantiations
static unsigned numberOfInstantiations()
Definition: VP1Deserialise.cxx:92
VP1Deserialise::Imp
Definition: VP1Deserialise.cxx:44
keylayer_zslicemap.sb
sb
Definition: keylayer_zslicemap.py:192
VP1Deserialise::restore
T restore()
Definition: VP1Deserialise.h:137
VP1Deserialise::restoreInt
qint32 restoreInt()
Definition: VP1Deserialise.cxx:442
VP1Deserialise::Imp::widgetNeedingUnblock
QWidget * widgetNeedingUnblock
Definition: VP1Deserialise.cxx:57
VP1Deserialise::restoreColor
QColor restoreColor()
Definition: VP1Deserialise.cxx:193
python.selection.number
number
Definition: selection.py:20
plotBeamSpotMon.b
b
Definition: plotBeamSpotMon.py:76
VP1Deserialise::widgetHandled
void widgetHandled(QWidget *)
Definition: VP1Deserialise.cxx:660
VP1Deserialise::warnUnrestored
void warnUnrestored(QObject *)
Definition: VP1Deserialise.cxx:698
VP1CollectionWidget
Definition: VP1CollectionWidget.h:32
VP1Deserialise::Imp::handledWidgets
QSet< QWidget * > handledWidgets
Definition: VP1Deserialise.cxx:54
VP1DrawOptionsWidget
Definition: VP1DrawOptionsWidget.h:25
TRT_PAI_physicsConstants::mb
const double mb
1mb to cm2
Definition: TRT_PAI_physicsConstants.h:17
VP1Deserialise::m_d
Imp * m_d
Definition: VP1Deserialise.h:126
unit
const PlainObject unit() const
This is a plugin that makes Eigen look like CLHEP & defines some convenience methods.
Definition: AmgMatrixBasePlugin.h:21
VP1Deserialise::ignoreDouble
void ignoreDouble()
Definition: VP1Deserialise.cxx:610
VP1Deserialise::ignoreObsoletePhiSectionWidgetState
void ignoreObsoletePhiSectionWidgetState()
Definition: VP1Deserialise.cxx:640
VP1Deserialise::ignoreByteArray
void ignoreByteArray()
Definition: VP1Deserialise.cxx:630
python.SystemOfUnits.s
float s
Definition: SystemOfUnits.py:147
VP1HelperClassBase::message
void message(const QString &) const
Definition: VP1HelperClassBase.cxx:49
VP1Deserialise::Imp::expectsPersistification
bool expectsPersistification(QWidget *w)
Definition: VP1Deserialise.cxx:666
pickleTool.object
object
Definition: pickleTool.py:29
VP1Msg::verbose
static bool verbose()
Definition: VP1Msg.h:31
VP1Deserialise::ignoreWidget
void ignoreWidget(QWidget *)
Definition: VP1Deserialise.cxx:650
python.IoTestsLib.w
def w
Definition: IoTestsLib.py:198
VP1Deserialise::restoreByteArray
QByteArray restoreByteArray()
Definition: VP1Deserialise.cxx:236
python.compressB64.c
def c
Definition: compressB64.py:93
VP1Deserialise::restoreString
QString restoreString()
Definition: VP1Deserialise.cxx:411
python.SystemOfUnits.m
float m
Definition: SystemOfUnits.py:106