5 #include "GeoSelClearAbsPosAction.h" 6 #include "GeoModelKernel/GeoClearAbsPosAction.h" 7 #include "GeoModelKernel/GeoAlignableTransform.h" 11 : m_alignTrans(alignTrans)
12 , m_needToClearCache(false)
17 GeoSelClearAbsPosAction::~GeoSelClearAbsPosAction()
21 void GeoSelClearAbsPosAction::handleTransform(
const GeoTransform *xform)
23 if(xform==m_alignTrans)
24 m_needToClearCache =
true;
27 void GeoSelClearAbsPosAction::handlePhysVol(
const GeoPhysVol *vol)
29 if(getPath()->getLength()>1 && m_needToClearCache) {
32 m_needToClearCache =
false;
36 void GeoSelClearAbsPosAction::handleFullPhysVol(
const GeoFullPhysVol *vol)
38 if(getPath()->getLength()>1 && m_needToClearCache) {
41 m_needToClearCache =
false;
virtual void exec(GeoNodeAction *action) const override final
Executes a GeoNodeAction.
Clears absolute postion information from full physical volume nodes. This action is initiated from a ...
This class represent a physical volume whose absolute default and aligned positions are known and hel...
virtual void exec(GeoNodeAction *action) const override
Executes a GeoNodeAction.
A GeoPhysVol is a physical volume for normal recursive access only. This means, normally, that it represents a piece of detector that nobody cares about except for tracing engines like GEANT. More specifically: