ATLAS Offline Software
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
AssocObjAttachmentHandle::Imp Class Reference
Collaboration diagram for AssocObjAttachmentHandle::Imp:

Public Member Functions

 Imp (TrackLODHandle *tlh, TrackHandleBase *th)
 
void ensureInit ()
 
void ensureAttached ()
 
void ensureDetached ()
 

Public Attributes

TrackHandleBasetrackhandle
 
SoMaterial * trackmat
 
TrackLODHandlelodHandle
 
SoSeparator * septrack_simple
 
SoSeparator * septrack_detailed
 
int pickStyleChildIdx
 
bool attached
 

Static Public Attributes

static SoPickStyle * pickStyle = nullptr
 
static SoMaterial * dummymaterial = nullptr
 

Detailed Description

Definition at line 1629 of file TrackHandleBase.cxx.

Constructor & Destructor Documentation

◆ Imp()

AssocObjAttachmentHandle::Imp::Imp ( TrackLODHandle tlh,
TrackHandleBase th 
)
inline

Definition at line 1631 of file TrackHandleBase.cxx.

1632  : trackhandle(th),
1633  trackmat(nullptr),
1634  lodHandle(tlh),
1635  septrack_simple(nullptr),
1636  septrack_detailed(nullptr),
1637  pickStyleChildIdx(-1),
1638  attached(false) {}

Member Function Documentation

◆ ensureAttached()

void AssocObjAttachmentHandle::Imp::ensureAttached ( )
inline

Definition at line 1648 of file TrackHandleBase.cxx.

1649  {
1650  if (attached)
1651  return;
1652  attached=true;
1653  if (!septrack_detailed)
1654  return;//We attach in ensureInit in this case!
1656  }

◆ ensureDetached()

void AssocObjAttachmentHandle::Imp::ensureDetached ( )
inline

Definition at line 1657 of file TrackHandleBase.cxx.

1658  {
1659  if (!attached)
1660  return;
1661  attached=false;
1662  if (!septrack_detailed)
1663  return;
1665  }

◆ ensureInit()

void AssocObjAttachmentHandle::Imp::ensureInit ( )

Definition at line 1746 of file TrackHandleBase.cxx.

1747 {
1748  if (septrack_simple)
1749  return;
1750  septrack_simple = new SoSeparator;
1751  septrack_detailed = new SoSeparator;
1752  septrack_simple->ref();
1753  septrack_detailed->ref();
1754 
1755  if (!pickStyle) {
1756  pickStyle = new SoPickStyle;
1757  pickStyle->style=SoPickStyle::UNPICKABLE;
1758  pickStyle->ref();
1759  }
1760  pickStyle->ref();
1761  if (attached) {
1762  attached = false;
1763  ensureAttached();
1764  }
1765 }

Member Data Documentation

◆ attached

bool AssocObjAttachmentHandle::Imp::attached

Definition at line 1647 of file TrackHandleBase.cxx.

◆ dummymaterial

SoMaterial * AssocObjAttachmentHandle::Imp::dummymaterial = nullptr
static

Definition at line 1666 of file TrackHandleBase.cxx.

◆ lodHandle

TrackLODHandle* AssocObjAttachmentHandle::Imp::lodHandle

Definition at line 1641 of file TrackHandleBase.cxx.

◆ pickStyle

SoPickStyle * AssocObjAttachmentHandle::Imp::pickStyle = nullptr
static

Definition at line 1645 of file TrackHandleBase.cxx.

◆ pickStyleChildIdx

int AssocObjAttachmentHandle::Imp::pickStyleChildIdx

Definition at line 1646 of file TrackHandleBase.cxx.

◆ septrack_detailed

SoSeparator* AssocObjAttachmentHandle::Imp::septrack_detailed

Definition at line 1643 of file TrackHandleBase.cxx.

◆ septrack_simple

SoSeparator* AssocObjAttachmentHandle::Imp::septrack_simple

Definition at line 1642 of file TrackHandleBase.cxx.

◆ trackhandle

TrackHandleBase* AssocObjAttachmentHandle::Imp::trackhandle

Definition at line 1639 of file TrackHandleBase.cxx.

◆ trackmat

SoMaterial* AssocObjAttachmentHandle::Imp::trackmat

Definition at line 1640 of file TrackHandleBase.cxx.


The documentation for this class was generated from the following file:
TrackLODHandle::removeNodes
void removeNodes(SoGroup *simple, SoGroup *detailed)
Definition: TrackLODManager.cxx:327
AssocObjAttachmentHandle::Imp::septrack_simple
SoSeparator * septrack_simple
Definition: TrackHandleBase.cxx:1642
AssocObjAttachmentHandle::Imp::pickStyleChildIdx
int pickStyleChildIdx
Definition: TrackHandleBase.cxx:1646
AssocObjAttachmentHandle::Imp::trackmat
SoMaterial * trackmat
Definition: TrackHandleBase.cxx:1640
AssocObjAttachmentHandle::Imp::trackhandle
TrackHandleBase * trackhandle
Definition: TrackHandleBase.cxx:1639
TrackLODHandle::addNodes
void addNodes(SoGroup *simple, SoGroup *detailed)
Definition: TrackLODManager.cxx:277
AssocObjAttachmentHandle::Imp::septrack_detailed
SoSeparator * septrack_detailed
Definition: TrackHandleBase.cxx:1643
python.TriggerHandler.th
th
Definition: TriggerHandler.py:296
AssocObjAttachmentHandle::Imp::lodHandle
TrackLODHandle * lodHandle
Definition: TrackHandleBase.cxx:1641
AssocObjAttachmentHandle::Imp::pickStyle
static SoPickStyle * pickStyle
Definition: TrackHandleBase.cxx:1645
AssocObjAttachmentHandle::Imp::attached
bool attached
Definition: TrackHandleBase.cxx:1647
AssocObjAttachmentHandle::Imp::ensureAttached
void ensureAttached()
Definition: TrackHandleBase.cxx:1648