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 1646 of file TrackHandleBase.cxx.

Constructor & Destructor Documentation

◆ Imp()

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

Definition at line 1648 of file TrackHandleBase.cxx.

1649  : trackhandle(th),
1650  trackmat(nullptr),
1651  lodHandle(tlh),
1652  septrack_simple(nullptr),
1653  septrack_detailed(nullptr),
1654  pickStyleChildIdx(-1),
1655  attached(false) {}

Member Function Documentation

◆ ensureAttached()

void AssocObjAttachmentHandle::Imp::ensureAttached ( )
inline

Definition at line 1665 of file TrackHandleBase.cxx.

1666  {
1667  if (attached)
1668  return;
1669  attached=true;
1670  if (!septrack_detailed)
1671  return;//We attach in ensureInit in this case!
1673  }

◆ ensureDetached()

void AssocObjAttachmentHandle::Imp::ensureDetached ( )
inline

Definition at line 1674 of file TrackHandleBase.cxx.

1675  {
1676  if (!attached)
1677  return;
1678  attached=false;
1679  if (!septrack_detailed)
1680  return;
1682  }

◆ ensureInit()

void AssocObjAttachmentHandle::Imp::ensureInit ( )

Definition at line 1763 of file TrackHandleBase.cxx.

1764 {
1765  if (septrack_simple)
1766  return;
1767  septrack_simple = new SoSeparator;
1768  septrack_detailed = new SoSeparator;
1769  septrack_simple->ref();
1770  septrack_detailed->ref();
1771 
1772  if (!pickStyle) {
1773  pickStyle = new SoPickStyle;
1774  pickStyle->style=SoPickStyle::UNPICKABLE;
1775  pickStyle->ref();
1776  }
1777  pickStyle->ref();
1778  if (attached) {
1779  attached = false;
1780  ensureAttached();
1781  }
1782 }

Member Data Documentation

◆ attached

bool AssocObjAttachmentHandle::Imp::attached

Definition at line 1664 of file TrackHandleBase.cxx.

◆ dummymaterial

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

Definition at line 1683 of file TrackHandleBase.cxx.

◆ lodHandle

TrackLODHandle* AssocObjAttachmentHandle::Imp::lodHandle

Definition at line 1658 of file TrackHandleBase.cxx.

◆ pickStyle

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

Definition at line 1662 of file TrackHandleBase.cxx.

◆ pickStyleChildIdx

int AssocObjAttachmentHandle::Imp::pickStyleChildIdx

Definition at line 1663 of file TrackHandleBase.cxx.

◆ septrack_detailed

SoSeparator* AssocObjAttachmentHandle::Imp::septrack_detailed

Definition at line 1660 of file TrackHandleBase.cxx.

◆ septrack_simple

SoSeparator* AssocObjAttachmentHandle::Imp::septrack_simple

Definition at line 1659 of file TrackHandleBase.cxx.

◆ trackhandle

TrackHandleBase* AssocObjAttachmentHandle::Imp::trackhandle

Definition at line 1656 of file TrackHandleBase.cxx.

◆ trackmat

SoMaterial* AssocObjAttachmentHandle::Imp::trackmat

Definition at line 1657 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:1659
AssocObjAttachmentHandle::Imp::pickStyleChildIdx
int pickStyleChildIdx
Definition: TrackHandleBase.cxx:1663
AssocObjAttachmentHandle::Imp::trackmat
SoMaterial * trackmat
Definition: TrackHandleBase.cxx:1657
AssocObjAttachmentHandle::Imp::trackhandle
TrackHandleBase * trackhandle
Definition: TrackHandleBase.cxx:1656
TrackLODHandle::addNodes
void addNodes(SoGroup *simple, SoGroup *detailed)
Definition: TrackLODManager.cxx:277
AssocObjAttachmentHandle::Imp::septrack_detailed
SoSeparator * septrack_detailed
Definition: TrackHandleBase.cxx:1660
python.TriggerHandler.th
th
Definition: TriggerHandler.py:296
AssocObjAttachmentHandle::Imp::lodHandle
TrackLODHandle * lodHandle
Definition: TrackHandleBase.cxx:1658
AssocObjAttachmentHandle::Imp::pickStyle
static SoPickStyle * pickStyle
Definition: TrackHandleBase.cxx:1662
AssocObjAttachmentHandle::Imp::attached
bool attached
Definition: TrackHandleBase.cxx:1664
AssocObjAttachmentHandle::Imp::ensureAttached
void ensureAttached()
Definition: TrackHandleBase.cxx:1665