45 m_d->minHitsPerStation = 0;
47 m_d->excludeMaskedHits =
true;
48 m_d->onlyShowActive =
true;
49 m_d->projectionsEnabled =
false;
50 m_d->appropriateprojection = 0;
62 return QColor::fromRgbF( 1.0, 0.666667, 0.0);
76 std::map<const MuonGM::MuonStation*,unsigned>::iterator itStation;
79 if (itStation!=
m_d->mdt2stationcounter.end())
80 ++(itStation->second);
89 m_d->mdt2stationcounter.clear();
99 if (
m_d->excludeMaskedHits) {
105 if (!
m_d->allowedADCValues.isAllR()) {
106 if (!
m_d->allowedADCValues.contains(handle->
ADC()))
110 if (
m_d->minHitsPerStation) {
117 if (
m_d->onlyShowActive) {
128 connect(controller,SIGNAL(mdtMinNHitsPerStationChanged(
unsigned)),
this,SLOT(
setMinNHitsPerStation(
unsigned)));
131 connect(controller,SIGNAL(highLightMDTHitsByMaskChanged(
bool)),
this,SLOT(
setHighLightByMask(
bool)));
140 connect(controller,SIGNAL(mdtExcludeMaskedHitsChanged(
bool)),
this,SLOT(
setExcludeMaskedHits(
bool)));
143 connect(controller,SIGNAL(mdt_cutMdtDriftCircleStatusChanged(QString)),
this,SLOT(
setStatus(QString)));
160 if (
m_d->minHitsPerStation==minnhits)
162 bool cut_relaxed = minnhits <
m_d->minHitsPerStation;
163 m_d->minHitsPerStation=minnhits;
173 if (
m_d->allowedADCValues==newinterval)
176 m_d->allowedADCValues = newinterval;
180 if (old.contains(newinterval))
190 if (
m_d->excludeMaskedHits==b)
192 bool cut_relaxed = !b;
193 m_d->excludeMaskedHits=b;
221 for (;it!=itE;++it) {
223 (*it)->updateMaterial();
244 for (;it!=itE;++it) {
246 if (adc>=low&&adc<=high)
247 (*it)->updateMaterial();
254 if (
m_d->projectionsEnabled==b)
256 m_d->projectionsEnabled=b;
257 m_d->updateProjectionFlag();
262 if (
m_d->appropriateprojection==i)
264 m_d->appropriateprojection=i;
265 m_d->updateProjectionFlag();
273 if (
m_d->onlyShowActive==l)
275 bool cut_relaxed=(
m_d->onlyShowActive);
276 m_d->onlyShowActive=l;
285 messageVerbose(
"PRDCollHandle_MDT::muonChambersTouchedByTracksChanged");
300 if (
theclass->m_projection!=projflag) {
302 theclass->common()->system()->deselectAll();
304 std::vector<PRDHandleBase*>::iterator it(
theclass->getPrdHandles().begin()),itE(
theclass->getPrdHandles().end());
306 (*it)->update3DObjects();
const MuonStation * parentMuonStation() const
Class to represent measurements from the Monitored Drift Tubes.
virtual const MuonGM::MdtReadoutElement * detectorElement() const override
Returns the detector element corresponding to this PRD.
void recheckCutStatusOfAllNotVisibleHandles()
PRDCollHandleBase(PRDDetType::Type, PRDSysCommonData *, const QString &key)
std::vector< PRDHandleBase * > & getPrdHandles()
void recheckCutStatusOfAllHandles()
PRDSysCommonData * common() const
void recheckCutStatusOfAllVisibleHandles()
PRDCollHandle_MDT * theclass
int appropriateprojection
VP1Interval allowedADCValues
std::map< const MuonGM::MuonStation *, unsigned > mdt2stationcounter
unsigned minHitsPerStation
void updateProjectionFlag()
void setExcludeMaskedHits(bool)
void setMinNHitsPerStation(unsigned)
virtual void postLoadInitialisation() override
void setHighLightByMask(bool)
virtual PRDHandleBase * addPRD(const Trk::PrepRawData *) override
PRDCollHandle_MDT(PRDSysCommonData *, const QString &key)
void setAppropriateProjection(int)
void setHighLightByUpperADCBound(int)
virtual QColor defaultColor() const override
virtual bool cut(PRDHandleBase *) override
virtual void setupSettingsFromControllerSpecific(PRDSystemController *) override
virtual ~PRDCollHandle_MDT()
void muonChambersTouchedByTracksChanged(void)
Inform this handle that it might need to recheck cuts.
void setLimitToActiveChambers(bool)
virtual void eraseEventDataSpecific() override
void setAllowedADCValues(const VP1Interval &)
static QStringList availableCollections(IVP1System *)
void setStatus(const QString &)
void setEnableProjections(bool)
const Muon::MdtPrepData * driftCircle() const
GeoPVConstLink parentMuonChamberPV() const
QString driftCircleStatus() const
unsigned mdtMinNHitsPerStation() const
bool highLightMDTHitsByMask()
VP1Interval mdtAllowedADCValues() const
int highLightMDTHitsByUpperADCBound()
bool mdtExcludeMaskedHits() const
bool limitToActiveChambers() const
QString mdt_cutMdtDriftCircleStatus() const
bool projectMDTHits() const
void messageVerbose(const QString &) const
bool contains(const double &x) const
static bool hasMuonGeometry()
QStringList getKeys() const
MuonPrepDataContainerT< MdtPrepData > MdtPrepDataContainer