ATLAS Offline Software
Public Types | Public Member Functions | Public Attributes | List of all members
TrigMatchToolCore::SlotCache Struct Reference
Collaboration diagram for TrigMatchToolCore::SlotCache:

Public Types

typedef std::vector< TrigFeatureCacheBase * > cacheVec_t
 
typedef std::unordered_map< std::string, cacheVec_tcacheMap_t
 
typedef std::recursive_mutex mutex_t
 
typedef std::lock_guard< mutex_tlock_t
 

Public Member Functions

 SlotCache ()
 
 ~SlotCache ()
 
void clear ()
 
void resetFeatureLabel ()
 resetFeatureLabel is used to reset the label to be used when extracting features from the navigation. More...
 

Public Attributes

std::string m_featureLabel
 
cacheVec_tm_caches
 
cacheMap_t m_cacheMap
 
std::vector< Trig::FeatureContainerm_featureContainers
 
std::vector< bool > m_featureContainersValid
 
size_t m_nFeatureContainers = 100
 
mutex_t m_mutex
 

Detailed Description

Definition at line 635 of file TrigMatchToolCore.h.

Member Typedef Documentation

◆ cacheMap_t

typedef std::unordered_map<std::string, cacheVec_t> TrigMatchToolCore::SlotCache::cacheMap_t

Definition at line 682 of file TrigMatchToolCore.h.

◆ cacheVec_t

Definition at line 677 of file TrigMatchToolCore.h.

◆ lock_t

Definition at line 690 of file TrigMatchToolCore.h.

◆ mutex_t

typedef std::recursive_mutex TrigMatchToolCore::SlotCache::mutex_t

Definition at line 689 of file TrigMatchToolCore.h.

Constructor & Destructor Documentation

◆ SlotCache()

TrigMatchToolCore::SlotCache::SlotCache ( )
inline

Definition at line 637 of file TrigMatchToolCore.h.

638  {
639  m_caches = &m_cacheMap[""];
640  }

◆ ~SlotCache()

TrigMatchToolCore::SlotCache::~SlotCache ( )
inline

Definition at line 642 of file TrigMatchToolCore.h.

643  {
644  for (const cacheMap_t::value_type& p : m_cacheMap) {
645  for (TrigFeatureCacheBase* cache : p.second) {
646  delete cache;
647  }
648  }
649  }

Member Function Documentation

◆ clear()

void TrigMatchToolCore::SlotCache::clear ( )
inline

Definition at line 651 of file TrigMatchToolCore.h.

652  {
653  lock_t lock (m_mutex);
654  for (const cacheMap_t::value_type& p : m_cacheMap) {
655  for (TrigFeatureCacheBase* cache : p.second) {
656  cache->clear();
657  }
658  }
659  std::vector<Trig::FeatureContainer>().swap (m_featureContainers);
660  std::vector<bool>().swap (m_featureContainersValid);
661  }

◆ resetFeatureLabel()

void TrigMatchToolCore::SlotCache::resetFeatureLabel ( )
inline

resetFeatureLabel is used to reset the label to be used when extracting features from the navigation.

It should not be necessary for users to call this function - it will be reset automatically.

Definition at line 669 of file TrigMatchToolCore.h.

670  {
671  m_featureLabel = "";
672  m_caches = &m_cacheMap[""];
673  }

Member Data Documentation

◆ m_cacheMap

cacheMap_t TrigMatchToolCore::SlotCache::m_cacheMap

Definition at line 683 of file TrigMatchToolCore.h.

◆ m_caches

cacheVec_t* TrigMatchToolCore::SlotCache::m_caches

Definition at line 680 of file TrigMatchToolCore.h.

◆ m_featureContainers

std::vector<Trig::FeatureContainer> TrigMatchToolCore::SlotCache::m_featureContainers

Definition at line 685 of file TrigMatchToolCore.h.

◆ m_featureContainersValid

std::vector<bool> TrigMatchToolCore::SlotCache::m_featureContainersValid

Definition at line 686 of file TrigMatchToolCore.h.

◆ m_featureLabel

std::string TrigMatchToolCore::SlotCache::m_featureLabel

Definition at line 675 of file TrigMatchToolCore.h.

◆ m_mutex

mutex_t TrigMatchToolCore::SlotCache::m_mutex

Definition at line 691 of file TrigMatchToolCore.h.

◆ m_nFeatureContainers

size_t TrigMatchToolCore::SlotCache::m_nFeatureContainers = 100

Definition at line 687 of file TrigMatchToolCore.h.


The documentation for this struct was generated from the following file:
TrigMatchToolCore::SlotCache::m_featureContainers
std::vector< Trig::FeatureContainer > m_featureContainers
Definition: TrigMatchToolCore.h:685
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
TrigMatchToolCore::SlotCache::m_featureLabel
std::string m_featureLabel
Definition: TrigMatchToolCore.h:675
TrigMatchToolCore::SlotCache::m_cacheMap
cacheMap_t m_cacheMap
Definition: TrigMatchToolCore.h:683
TrigMatchToolCore::SlotCache::lock_t
std::lock_guard< mutex_t > lock_t
Definition: TrigMatchToolCore.h:690
TrigMatchToolCore::SlotCache::m_featureContainersValid
std::vector< bool > m_featureContainersValid
Definition: TrigMatchToolCore.h:686
TrigMatchToolCore::SlotCache::m_caches
cacheVec_t * m_caches
Definition: TrigMatchToolCore.h:680
TrigMatchToolCore::SlotCache::m_mutex
mutex_t m_mutex
Definition: TrigMatchToolCore.h:691