ATLAS Offline Software
Loading...
Searching...
No Matches
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.

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.

◆ ~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 }
std::vector< bool > m_featureContainersValid
std::vector< Trig::FeatureContainer > m_featureContainers
std::lock_guard< mutex_t > lock_t

◆ 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: