2   Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
 
    8 TRT_DriftCircle::getWord() const
 
   14 TRT_DriftCircle::driftTimeBin() const
 
   16   if (!m_island.isValid()) {
 
   18     TRT_LoLumRawData::findLargestIsland(m_word, tmpIsland);
 
   19     m_island.set(tmpIsland);
 
   21   return m_island.ptr()->m_leadingEdge;
 
   25 TRT_DriftCircle::trailingEdge() const
 
   27   if (!m_island.isValid()) {
 
   29     TRT_LoLumRawData::findLargestIsland(m_word, tmpIsland);
 
   30     m_island.set(tmpIsland);
 
   32   return m_island.ptr()->m_trailingEdge;
 
   36 TRT_DriftCircle::highLevel() const
 
   38   return TRT_LoLumRawData::highLevel(m_word);
 
   42 TRT_DriftCircle::firstBinHigh() const
 
   44   return (m_word & 0x02000000);
 
   48 TRT_DriftCircle::lastBinHigh() const
 
   50   return (m_word & 0x1);
 
   54 TRT_DriftCircle::timeOverThreshold() const {
 
   55   unsigned int leadingEdge = driftTimeBin();
 
   56   unsigned int trailingEdge = this->trailingEdge();
 
   57   if (leadingEdge && trailingEdge) {
 
   58     return (trailingEdge - leadingEdge + 1) *
 
   59            TRT_LoLumRawData::getDriftTimeBinWidth();
 
   65 TRT_DriftCircle::rawDriftTime() const {
 
   66   return (driftTimeBin() + 0.5) * TRT_LoLumRawData::getDriftTimeBinWidth();
 
   70 TRT_DriftCircle::driftTimeValid() const
 
   72   return m_word & 0x08000000;
 
   76 TRT_DriftCircle::driftTime(bool& valid) const
 
   78   valid = driftTimeValid();
 
   79   return rawDriftTime();
 
   83 TRT_DriftCircle::setDriftTimeValid(bool valid)
 
   85   unsigned maskfalse = 0xF7FFFFFF;
 
   86   unsigned masktrue = 0x08000000;
 
   96 TRT_DriftCircle::numberOfHighsBetweenEdges() const
 
   98   // should return always 0 with the largest island algorithm
 
   99   int LE = driftTimeBin();
 
  100   int TE = trailingEdge();
 
  101   unsigned mask = 0x02000000;
 
  104   for (i = 0; i < 24; ++i) {
 
  105     if ((m_word & mask) && i >= LE && i <= TE)
 
  108     if (i == 7 || i == 15)
 
  115 TRT_DriftCircle::numberOfLowsBetweenEdges() const
 
  117   // should return always 0 with the largest island algorithm
 
  118   int LE = driftTimeBin();
 
  119   int TE = trailingEdge();
 
  120   return (TE - LE + 1 - numberOfHighsBetweenEdges());
 
  124 TRT_DriftCircle::isNoise() const
 
  126   if (numberOfHighsBetweenEdges() < 3)
 
  128   if (timeOverThreshold() < 7.)
 
  133 inline Trk::PrepRawDataType
 
  134 TRT_DriftCircle::prdType() const {
 
  135   return Trk::PrepRawDataType::TRT_DriftCircle;
 
  138 inline const InDetDD::TRT_BaseElement*
 
  139 TRT_DriftCircle::detectorElement() const