ATLAS Offline Software
Loading...
Searching...
No Matches
TrigMatchToolCore::TrigFeatureCache< trigType > Class Template Reference
Inheritance diagram for TrigMatchToolCore::TrigFeatureCache< trigType >:
Collaboration diagram for TrigMatchToolCore::TrigFeatureCache< trigType >:

Classes

struct  cacheData_t

Public Member Functions

 TrigFeatureCache ()
virtual void clear ()
bool get (size_t chainIndex, bool onlyPassedFeatures, std::vector< const trigType * > &objects)
void add (size_t chainIndex, bool onlyPassedFeatures, const std::vector< const trigType * > &data)

Private Types

typedef std::vector< cacheData_tcacheDatavec_t

Private Attributes

cacheDatavec_t m_data [2]
size_t m_size [2]

Detailed Description

template<typename trigType>
class TrigMatchToolCore::TrigFeatureCache< trigType >

Definition at line 557 of file TrigMatchToolCore.h.

Member Typedef Documentation

◆ cacheDatavec_t

template<typename trigType>
typedef std::vector<cacheData_t> TrigMatchToolCore::TrigFeatureCache< trigType >::cacheDatavec_t
private

Definition at line 610 of file TrigMatchToolCore.h.

Constructor & Destructor Documentation

◆ TrigFeatureCache()

template<typename trigType>
TrigMatchToolCore::TrigFeatureCache< trigType >::TrigFeatureCache ( )
inline

Definition at line 559 of file TrigMatchToolCore.h.

560 {
561 m_size[0] = m_size[1] = 0;
562 }

Member Function Documentation

◆ add()

template<typename trigType>
void TrigMatchToolCore::TrigFeatureCache< trigType >::add ( size_t chainIndex,
bool onlyPassedFeatures,
const std::vector< const trigType * > & data )
inline

Definition at line 584 of file TrigMatchToolCore.h.

587 {
589 if (chainIndex >= v.size()) {
590 size_t& sz = m_size[onlyPassedFeatures];
591 if (chainIndex >= sz)
592 sz = chainIndex + 1;
593 v.resize (sz);
594 }
595 v[chainIndex].valid = true;
596 v[chainIndex].data = data;
597 }
std::vector< cacheData_t > cacheDatavec_t

◆ clear()

template<typename trigType>
virtual void TrigMatchToolCore::TrigFeatureCache< trigType >::clear ( )
inlinevirtual

Implements TrigMatchToolCore::TrigFeatureCacheBase.

Definition at line 564 of file TrigMatchToolCore.h.

565 {
566 for (int i = 0; i < 2; i++) {
567 cacheDatavec_t().swap (m_data[i]);
568 }
569 }

◆ get()

template<typename trigType>
bool TrigMatchToolCore::TrigFeatureCache< trigType >::get ( size_t chainIndex,
bool onlyPassedFeatures,
std::vector< const trigType * > & objects )
inline

Definition at line 571 of file TrigMatchToolCore.h.

574 {
576 if (chainIndex < v.size() && v[chainIndex].valid) {
577 objects = v[chainIndex].data;
578 return true;
579 }
580 return false;
581
582 }

Member Data Documentation

◆ m_data

template<typename trigType>
cacheDatavec_t TrigMatchToolCore::TrigFeatureCache< trigType >::m_data[2]
private

Definition at line 611 of file TrigMatchToolCore.h.

◆ m_size

template<typename trigType>
size_t TrigMatchToolCore::TrigFeatureCache< trigType >::m_size[2]
private

Definition at line 612 of file TrigMatchToolCore.h.


The documentation for this class was generated from the following file: