 |
ATLAS Offline Software
|
Go to the documentation of this file.
15 {ETDENSITY,
"ETDENSITY"},
16 {ETDENSITY_JETAREA,
"ETDESNSITY_JETAREA"},
17 {ETDENSITY_JETAREA_ETA,
"ETDENSITY_JETAREA_ETA"},
18 {ETDENSITY_ETA_WINDOWS,
"ETDENSITY_ETA_WINDOWS"},
19 {ETDENSITY_USER,
"ETDENSITY_USER"},
29 std::map<FeatureType,std::string>::const_iterator fMap(
m_featureTags.begin());
30 std::map<FeatureType,std::string>::const_iterator lMap(
m_featureTags.end());
31 while ( fMap != lMap &&
tag != fMap->second ) { ++ fMap; }
32 return fMap != lMap ? fMap->first :
UNKNOWN;
58 , m_featureStructure(0)
60 , m_structureFixed(false)
64 const std::string&
tag,
65 const std::vector<double>& dataList)
68 , m_dataWords(dataList.
size())
70 , m_dataList(dataList.
begin(),dataList.
end())
71 , m_structureFixed(true)
78 const std::vector<double>& dataList)
82 , m_dataBlocks(dataList.
size()/m_dataWords)
83 , m_dataList(dataList.
begin(),dataList.
end())
84 , m_structureFixed(true)
96 , m_structureFixed(true)
103 , m_tag(feature.m_tag)
104 , m_dataWords(feature.m_dataWords)
105 , m_dataBlocks(feature.m_dataBlocks)
106 , m_dataList(feature.dataList().
begin(),feature.dataList().
end())
107 , m_structureFixed(feature.m_structureFixed)
117 if (
this != &feature) {
145 for (
size_t i(
idx.first);
i<
idx.second; ++
i )
149 return !
data.empty();
153 const std::vector<double>&
data,
173 const std::vector<double>&
data)
183 const std::vector<double>&
data)
203 if ( nBlocks <= (
size_t)
236 if ( locIdx >
m_dataList.size() )
return false;
237 idx.first = startIdx;
std::string replace(std::string s, const std::string &s2, const std::string &s3)
char data[hepevt_bytes_allocation_ATLAS]
static const std::map< FeatureType, std::string > m_featureTags
Lookup for feature type and tag matches.
bool m_structureFixed
Control flag for setting number of data words.
FeatureType m_type
Internal cache for feature type.
static double nullValue()
unsigned int m_dataBlocks
Internal cache for data structure descriptor (number of blocks)
bool addDataBlock(const std::vector< double > &data)
static FeatureType featureType()
Default feature type.
Basic container for event feature data.
FeatureType type() const
Retrieve feature type.
unsigned int buildFeatureStructure()
Build compressed feature structure.
std::string m_tag
Internal cache for feature tag.
unsigned int m_featureStructure
Internal cache for compressed data structure descriptor.
bool indexRange(size_t startIdx, index_t &idx)
std::pair< size_t, size_t > index_t
void setNumberDataWords(size_t nWords)
Set number of data words per block.
static double invalidValue()
EventFeature()
Default constructor.
bool insertDataBlock(size_t startIdx, size_t endIdx, const std::vector< double > &data)
unsigned int m_dataWords
Internal cache data structure description (words per block)
EventFeature & operator=(const EventFeature &feature)
Assignment operator.
bool inRange(const double *boundaries, const double value, const double tolerance=0.02)
virtual ~EventFeature()
Destructor.
bool setDataBlock(size_t blockIdx, const std::vector< double > &data, bool replace=true)
Set one data block.
const std::string & tag() const
Retrieve feature tag.
std::vector< double > m_dataList
Internal cache for vector data.
bool dataBlock(size_t blockIdx, std::vector< double > &data)
Return one datablock.
void setNumberDataBlocks(size_t nBlocks)
Set number of blocks.
static const std::string & featureTag()
Default feature tag.
void setFeatureStructure(bool updateCache=false)
Set/update feature structure.