ATLAS Offline Software
IVP12DSystem.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // //
7 // Header file for class IVP12DSystem //
8 // //
9 // Author: Thomas Kittelmann <Thomas.Kittelmann@cern.ch> //
10 // //
11 // Initial version: April 2007 //
12 // //
14 
15 #ifndef IVP12DSYSTEM_H
16 #define IVP12DSYSTEM_H
17 
18 #include "VP1Base/IVP1System.h"
19 
20 #include <QSet>
21 
23 class QGraphicsItem;
24 
25 class IVP12DSystem : public IVP1System {
26 
27  Q_OBJECT
28 
29 public:
30 
35 
36  IVP12DSystem(const QString & name, const QString & information, const QString & contact_info);
37 
38  //Derived classes must call the following method exactly once on
39  //each item collection they provide:
41 
42  //Reimplement if you need to catch user picks, selections or events (you need to enable the item collections for this!):
43 
44  virtual void itemPicked(VP1GraphicsItemCollection*,QGraphicsItem*);
45  virtual void itemGotEvent(VP1GraphicsItemCollection*,QGraphicsItem*,QEvent*);
46  virtual void selectionChanged(VP1GraphicsItemCollection*,QList<QGraphicsItem*>);
47 
48  //This is for use by the channels:
49  const QSet<VP1GraphicsItemCollection*>& getItemCollections();
50 
55 
56  virtual ~IVP12DSystem();
57 
58 signals:
59  void itemFromSystemSelected();//Should be emitted whenever item in this system is selected (mainly to give channel chance to show the system controller)
60 
61 private:
64  class Imp;
65  Imp * m_d;
66 
67 private Q_SLOTS:
68  void itemPickedPrivate(QGraphicsItem*);
69  void itemGotEventPrivate(QGraphicsItem*,QEvent*);
70  void selectionChangedPrivate(const QList<QGraphicsItem*>&);
71 };
72 
73 #endif
IVP12DSystem::selectionChangedPrivate
void selectionChangedPrivate(const QList< QGraphicsItem * > &)
Definition: IVP12DSystem.cxx:79
IVP12DSystem::itemFromSystemSelected
void itemFromSystemSelected()
IVP12DSystem::registerItemCollection
void registerItemCollection(VP1GraphicsItemCollection *)
Definition: IVP12DSystem.cxx:44
IVP1System::information
const QString & information() const
Definition: IVP1System.cxx:56
IVP12DSystem::~IVP12DSystem
virtual ~IVP12DSystem()
Definition: IVP12DSystem.cxx:38
IVP12DSystem::Imp
Definition: IVP12DSystem.cxx:25
IVP12DSystem::itemPicked
virtual void itemPicked(VP1GraphicsItemCollection *, QGraphicsItem *)
Definition: IVP12DSystem.cxx:20
IVP12DSystem
Definition: IVP12DSystem.h:25
IVP12DSystem::selectionChanged
virtual void selectionChanged(VP1GraphicsItemCollection *, QList< QGraphicsItem * >)
Definition: IVP12DSystem.cxx:22
IVP1System
Definition: IVP1System.h:36
IVP12DSystem::IVP12DSystem
IVP12DSystem(const QString &name, const QString &information, const QString &contact_info)
Definition: IVP12DSystem.cxx:32
IVP1System::name
const QString & name() const
Definition: IVP1System.cxx:50
IVP1System::contact_info
const QString & contact_info() const
Definition: IVP1System.cxx:62
python.L1.Config.LegacyTopoMergerMap.signals
signals
Definition: LegacyTopoMergerMap.py:13
IVP12DSystem::itemGotEvent
virtual void itemGotEvent(VP1GraphicsItemCollection *, QGraphicsItem *, QEvent *)
Definition: IVP12DSystem.cxx:21
IVP12DSystem::m_d
Imp * m_d
Definition: IVP12DSystem.h:64
IVP12DSystem::getItemCollections
const QSet< VP1GraphicsItemCollection * > & getItemCollections()
Definition: IVP12DSystem.cxx:55
IVP12DSystem::operator=
IVP12DSystem & operator=(const IVP12DSystem &)
IVP12DSystem::itemGotEventPrivate
void itemGotEventPrivate(QGraphicsItem *, QEvent *)
Definition: IVP12DSystem.cxx:70
IVP12DSystem::itemPickedPrivate
void itemPickedPrivate(QGraphicsItem *)
Definition: IVP12DSystem.cxx:61
VP1GraphicsItemCollection
Definition: VP1GraphicsItemCollection.h:53
IVP12DSystem::IVP12DSystem
IVP12DSystem(const IVP12DSystem &)
IVP1System.h