ATLAS Offline Software
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
AssociatedObjectHandleBase Class Referenceabstract

#include <AssociatedObjectHandleBase.h>

Inheritance diagram for AssociatedObjectHandleBase:
Collaboration diagram for AssociatedObjectHandleBase:

Classes

class  Imp
 

Public Types

enum  PICKSTYLE { UNPICKABLE, ALL, COMPONENTS }
 

Public Member Functions

 AssociatedObjectHandleBase (TrackHandleBase *)
 
virtual QStringList clicked ()=0
 
virtual TrackCommonFlags::TSOSPartsFlags parts () const
 
virtual unsigned nParts () const
 
bool hasParameters () const
 
bool hasParError () const
 
bool hasError () const
 
bool hasMaterialEffect () const
 
bool hasSurface () const
 
bool hasMeasurement () const
 
TrackSysCommonDatacommon () const
 
void setPickable (PICKSTYLE)
 
PICKSTYLE pickStyle () const
 
virtual void setVisible (bool)
 
bool visible () const
 
void toggleVisible ()
 
TrackHandleBasetrackHandle () const
 
void update3DObjects ()
 
SoSeparator * shapeSimple () const
 
SoSeparator * shapeDetailed () const
 
virtual bool initiatesOwnZooms () const
 

Static Public Member Functions

static int numberOfInstances ()
 

Protected Member Functions

virtual void buildShapes (SoSeparator *&shape_simple, SoSeparator *&shape_detailed)=0
 
virtual int regionIndex () const
 
virtual double lodCrossOverValue () const
 
virtual ~AssociatedObjectHandleBase ()
 

Private Member Functions

 AssociatedObjectHandleBase (const AssociatedObjectHandleBase &)
 
AssociatedObjectHandleBaseoperator= (const AssociatedObjectHandleBase &)
 
void registerShapes (SoSeparator *simple, SoSeparator *detailed)
 
void unregisterShapes (SoSeparator *simple, SoSeparator *detailed)
 
AssocObjAttachmentHandlegetAttachmentHandle ()
 

Private Attributes

Impm_d
 
TrackHandleBasem_trackHandle
 
bool m_visible
 
PICKSTYLE m_pickStyle
 

Friends

class TrackHandleBase
 

Detailed Description

Definition at line 35 of file AssociatedObjectHandleBase.h.

Member Enumeration Documentation

◆ PICKSTYLE

Enumerator
UNPICKABLE 
ALL 
COMPONENTS 

Definition at line 57 of file AssociatedObjectHandleBase.h.

Constructor & Destructor Documentation

◆ AssociatedObjectHandleBase() [1/2]

AssociatedObjectHandleBase::AssociatedObjectHandleBase ( TrackHandleBase th)

Definition at line 111 of file AssociatedObjectHandleBase.cxx.

112  : m_d(new Imp),m_trackHandle(th), m_visible(false), m_pickStyle(UNPICKABLE/*better default?*/)
113 {
114  ++Imp::nascobjs;
115 }

◆ AssociatedObjectHandleBase() [2/2]

AssociatedObjectHandleBase::AssociatedObjectHandleBase ( const AssociatedObjectHandleBase )
private

◆ ~AssociatedObjectHandleBase()

AssociatedObjectHandleBase::~AssociatedObjectHandleBase ( )
protectedvirtual

Definition at line 118 of file AssociatedObjectHandleBase.cxx.

119 {
122  }
123  m_d->ensureShapesErased(this );
124  delete m_d;
125  --Imp::nascobjs;
126 
127 }

Member Function Documentation

◆ buildShapes()

virtual void AssociatedObjectHandleBase::buildShapes ( SoSeparator *&  shape_simple,
SoSeparator *&  shape_detailed 
)
protectedpure virtual

◆ clicked()

virtual QStringList AssociatedObjectHandleBase::clicked ( )
pure virtual

◆ common()

TrackSysCommonData * AssociatedObjectHandleBase::common ( ) const

Definition at line 105 of file AssociatedObjectHandleBase.cxx.

106 {
107  return m_trackHandle->common();
108 }

◆ getAttachmentHandle()

AssocObjAttachmentHandle * AssociatedObjectHandleBase::getAttachmentHandle ( )
private

Definition at line 155 of file AssociatedObjectHandleBase.cxx.

156 {
158 }

◆ hasError()

bool AssociatedObjectHandleBase::hasError ( ) const
inline

Definition at line 50 of file AssociatedObjectHandleBase.h.

◆ hasMaterialEffect()

bool AssociatedObjectHandleBase::hasMaterialEffect ( ) const
inline

Definition at line 51 of file AssociatedObjectHandleBase.h.

◆ hasMeasurement()

bool AssociatedObjectHandleBase::hasMeasurement ( ) const
inline

Definition at line 53 of file AssociatedObjectHandleBase.h.

◆ hasParameters()

bool AssociatedObjectHandleBase::hasParameters ( ) const
inline

Definition at line 48 of file AssociatedObjectHandleBase.h.

◆ hasParError()

bool AssociatedObjectHandleBase::hasParError ( ) const
inline

Definition at line 49 of file AssociatedObjectHandleBase.h.

◆ hasSurface()

bool AssociatedObjectHandleBase::hasSurface ( ) const
inline

Definition at line 52 of file AssociatedObjectHandleBase.h.

◆ initiatesOwnZooms()

virtual bool AssociatedObjectHandleBase::initiatesOwnZooms ( ) const
inlinevirtual

Reimplemented in AscObj_TSOS, and AscObj_TrackState.

Definition at line 71 of file AssociatedObjectHandleBase.h.

71 { return false; }

◆ lodCrossOverValue()

virtual double AssociatedObjectHandleBase::lodCrossOverValue ( ) const
inlineprotectedvirtual

Reimplemented in AscObj_TSOS, AscObj_TrackState, and AscObj_TruthPoint.

Definition at line 82 of file AssociatedObjectHandleBase.h.

82 { return 50*50; };

◆ nParts()

virtual unsigned AssociatedObjectHandleBase::nParts ( ) const
inlinevirtual

Definition at line 47 of file AssociatedObjectHandleBase.h.

47 { return 1; }

◆ numberOfInstances()

int AssociatedObjectHandleBase::numberOfInstances ( )
static

Definition at line 130 of file AssociatedObjectHandleBase.cxx.

131 {
132  return Imp::nascobjs;
133 }

◆ operator=()

AssociatedObjectHandleBase& AssociatedObjectHandleBase::operator= ( const AssociatedObjectHandleBase )
private

◆ parts()

virtual TrackCommonFlags::TSOSPartsFlags AssociatedObjectHandleBase::parts ( ) const
inlinevirtual

Reimplemented in AscObj_TSOS, and AscObj_TrackState.

Definition at line 46 of file AssociatedObjectHandleBase.h.

46 { return TrackCommonFlags::TSOSPartsFlags(); }

◆ pickStyle()

PICKSTYLE AssociatedObjectHandleBase::pickStyle ( ) const
inline

Definition at line 59 of file AssociatedObjectHandleBase.h.

59 { return m_pickStyle; }

◆ regionIndex()

virtual int AssociatedObjectHandleBase::regionIndex ( ) const
inlineprotectedvirtual

Reimplemented in AscObj_TSOS, AscObj_TrackState, and AscObj_TruthPoint.

Definition at line 81 of file AssociatedObjectHandleBase.h.

81 { return 0; };

◆ registerShapes()

void AssociatedObjectHandleBase::registerShapes ( SoSeparator *  simple,
SoSeparator *  detailed 
)
private

Definition at line 93 of file AssociatedObjectHandleBase.cxx.

94 {
96 }

◆ setPickable()

void AssociatedObjectHandleBase::setPickable ( PICKSTYLE  ps)

Definition at line 136 of file AssociatedObjectHandleBase.cxx.

137 {
138  if (m_pickStyle==ps)
139  return;
140  m_pickStyle=ps;
141 
142  //Fixme...
143 
144 }

◆ setVisible()

void AssociatedObjectHandleBase::setVisible ( bool  b)
virtual

Reimplemented in AscObj_TSOS, and AscObj_TrackState.

Definition at line 171 of file AssociatedObjectHandleBase.cxx.

172 {
173  if (m_visible==b)
174  return;
175  m_visible=b;
176  if (b) {
177  m_d->ensureShapesBuild(this);
178  m_d->attach(this);
179  } else {
180  m_d->detach();
181  }
182 }

◆ shapeDetailed()

SoSeparator * AssociatedObjectHandleBase::shapeDetailed ( ) const

Definition at line 206 of file AssociatedObjectHandleBase.cxx.

207 {
208  return m_d->sep_detailed;
209 }

◆ shapeSimple()

SoSeparator * AssociatedObjectHandleBase::shapeSimple ( ) const

Definition at line 200 of file AssociatedObjectHandleBase.cxx.

201 {
202  return m_d->sep_simple;
203 }

◆ toggleVisible()

void AssociatedObjectHandleBase::toggleVisible ( )
inline

Definition at line 62 of file AssociatedObjectHandleBase.h.

62 { setVisible(!m_visible); }

◆ trackHandle()

TrackHandleBase* AssociatedObjectHandleBase::trackHandle ( ) const
inline

Definition at line 64 of file AssociatedObjectHandleBase.h.

64 { return m_trackHandle; }

◆ unregisterShapes()

void AssociatedObjectHandleBase::unregisterShapes ( SoSeparator *  simple,
SoSeparator *  detailed 
)
private

Definition at line 99 of file AssociatedObjectHandleBase.cxx.

100 {
102 }

◆ update3DObjects()

void AssociatedObjectHandleBase::update3DObjects ( )

Definition at line 185 of file AssociatedObjectHandleBase.cxx.

186 {
187  VP1Msg::messageVerbose("AssociatedObjectHandleBase update3DObjects.");
188 
189  if (m_visible) {
190  m_d->detach();
191  m_d->ensureShapesErased(this);
192  m_d->ensureShapesBuild(this);
193  m_d->attach(this);
194  } else {
195  m_d->ensureShapesErased(this);
196  }
197 }

◆ visible()

bool AssociatedObjectHandleBase::visible ( ) const
inline

Definition at line 61 of file AssociatedObjectHandleBase.h.

61 { return m_visible; }

Friends And Related Function Documentation

◆ TrackHandleBase

friend class TrackHandleBase
friend

Definition at line 101 of file AssociatedObjectHandleBase.h.

Member Data Documentation

◆ m_d

Imp* AssociatedObjectHandleBase::m_d
private

Definition at line 91 of file AssociatedObjectHandleBase.h.

◆ m_pickStyle

PICKSTYLE AssociatedObjectHandleBase::m_pickStyle
private

Definition at line 95 of file AssociatedObjectHandleBase.h.

◆ m_trackHandle

TrackHandleBase* AssociatedObjectHandleBase::m_trackHandle
private

Definition at line 93 of file AssociatedObjectHandleBase.h.

◆ m_visible

bool AssociatedObjectHandleBase::m_visible
private

Definition at line 94 of file AssociatedObjectHandleBase.h.


The documentation for this class was generated from the following files:
AssociatedObjectHandleBase::m_d
Imp * m_d
Definition: AssociatedObjectHandleBase.h:90
AssociatedObjectHandleBase::UNPICKABLE
@ UNPICKABLE
Definition: AssociatedObjectHandleBase.h:57
AscObjSelectionManager::registerAscObj
void registerAscObj(SoSeparator *simple, SoSeparator *detailed, AssociatedObjectHandleBase *)
Definition: AscObjSelectionManager.cxx:140
AssociatedObjectHandleBase::parts
virtual TrackCommonFlags::TSOSPartsFlags parts() const
Definition: AssociatedObjectHandleBase.h:46
AssociatedObjectHandleBase::lodCrossOverValue
virtual double lodCrossOverValue() const
Definition: AssociatedObjectHandleBase.h:82
AssociatedObjectHandleBase::Imp::attach
void attach(AssociatedObjectHandleBase *theclass)
Definition: AssociatedObjectHandleBase.cxx:162
AssociatedObjectHandleBase::regionIndex
virtual int regionIndex() const
Definition: AssociatedObjectHandleBase.h:81
AssociatedObjectHandleBase::m_trackHandle
TrackHandleBase * m_trackHandle
Definition: AssociatedObjectHandleBase.h:93
TrackCommonFlags::TSOS_AnyMeasurement
@ TSOS_AnyMeasurement
Definition: TrackCommonFlags.h:61
AssociatedObjectHandleBase::COMPONENTS
@ COMPONENTS
Definition: AssociatedObjectHandleBase.h:57
TrackHandleBase::collHandle
TrackCollHandleBase * collHandle() const
Definition: TrackHandleBase.h:68
AssociatedObjectHandleBase::Imp::attachhandle
AssocObjAttachmentHandle * attachhandle
Definition: AssociatedObjectHandleBase.cxx:37
TrackSysCommonData::ascObjSelectionManager
AscObjSelectionManager * ascObjSelectionManager() const
Definition: TrackSysCommonData.h:123
TrackCommonFlags::TSOS_AnySurface
@ TSOS_AnySurface
Definition: TrackCommonFlags.h:60
AssocObjAttachmentHandle::detachNodes
void detachNodes(SoNode *simple, SoNode *detailed)
Definition: TrackHandleBase.cxx:1920
AssociatedObjectHandleBase::Imp::detach
void detach() const
Definition: AssociatedObjectHandleBase.cxx:147
TrackCommonFlags::TSOS_AnyErrors
@ TSOS_AnyErrors
Definition: TrackCommonFlags.h:67
AssociatedObjectHandleBase::Imp::sep_detailed
SoSeparator * sep_detailed
Definition: AssociatedObjectHandleBase.cxx:36
TrackCommonFlags::TSOS_TrackPars
@ TSOS_TrackPars
bit 0
Definition: TrackCommonFlags.h:44
python.TriggerHandler.th
th
Definition: TriggerHandler.py:296
AssociatedObjectHandleBase::m_visible
bool m_visible
Definition: AssociatedObjectHandleBase.h:94
AssociatedObjectHandleBase::m_pickStyle
PICKSTYLE m_pickStyle
Definition: AssociatedObjectHandleBase.h:95
AssociatedObjectHandleBase::Imp::sep_simple
SoSeparator * sep_simple
Definition: AssociatedObjectHandleBase.cxx:35
AssociatedObjectHandleBase::setVisible
virtual void setVisible(bool)
Definition: AssociatedObjectHandleBase.cxx:171
TrackCommonFlags::TSOS_AnyMaterialEffects
@ TSOS_AnyMaterialEffects
Definition: TrackCommonFlags.h:59
TrackHandleBase::common
TrackSysCommonData * common() const
Definition: TrackHandleBase.cxx:255
AssociatedObjectHandleBase::ALL
@ ALL
Definition: AssociatedObjectHandleBase.h:57
plotBeamSpotMon.b
b
Definition: plotBeamSpotMon.py:77
AssociatedObjectHandleBase::Imp::ensureShapesBuild
void ensureShapesBuild(AssociatedObjectHandleBase *theclass)
Definition: AssociatedObjectHandleBase.cxx:49
AscObjSelectionManager::unregisterAscObj
void unregisterAscObj(SoSeparator *simple, SoSeparator *detailed)
Definition: AscObjSelectionManager.cxx:164
VP1Msg::messageVerbose
static void messageVerbose(const QString &)
Definition: VP1Msg.cxx:84
TrackCommonFlags::TSOS_AnyParsErrors
@ TSOS_AnyParsErrors
Definition: TrackCommonFlags.h:66
AssociatedObjectHandleBase::Imp::ensureShapesErased
void ensureShapesErased(AssociatedObjectHandleBase *theclass)
Definition: AssociatedObjectHandleBase.cxx:77
TrackHandleBase::getAttachmentHandle
AssocObjAttachmentHandle * getAttachmentHandle(int regionIndex, const double &crossoverval)
Definition: TrackHandleBase.cxx:1468
TrackCollHandleBase::common
TrackSysCommonData * common() const
Definition: TrackCollHandleBase.h:79
AssociatedObjectHandleBase::Imp::nascobjs
static int nascobjs
Definition: AssociatedObjectHandleBase.cxx:29