7#ifndef EVENTSHAPEEVENT_EVENTFEATURE_H
8#define EVENTSHAPEEVENT_EVENTFEATURE_H
74 const std::string&
tag,
75 const std::vector<double>&
dataList);
85 const std::string&
tag,
86 unsigned int dataStructure,
87 const std::vector<double>&
dataList);
99 const std::string&
tag,
100 unsigned int dataStructure);
120 const std::string&
tag()
const;
145 const std::vector<double>&
dataList()
const;
242 static const std::map<FeatureType,std::string>
m_featureTags;
249 const std::vector<double>&
data);
250 bool addDataBlock(
size_t startIdx,
size_t endIdx,
const std::vector<double>&
char data[hepevt_bytes_allocation_ATLAS]
Basic container for event feature data.
std::string m_tag
Internal cache for feature tag.
unsigned int buildFeatureStructure()
Build compressed feature structure.
void setType(FeatureType type)
Set feature type.
void setNumberDataWords(size_t nWords)
Set number of data words per block.
FeatureStructureMask
Feature structure descriptors.
static FeatureType featureType()
Default feature type.
FeatureType type() const
Retrieve feature type.
std::vector< double > m_dataList
Internal cache for vector data.
bool setDataBlock(size_t blockIdx, const std::vector< double > &data, bool replace=true)
Set one data block.
unsigned int featureStructure() const
Retrieve data structure descriptor.
EventFeature & operator=(const EventFeature &feature)
Assignment operator.
static const std::map< FeatureType, std::string > m_featureTags
Lookup for feature type and tag matches.
size_t numberDataBlocks()
Retrieve number of data blocks.
unsigned int m_dataBlocks
Internal cache for data structure descriptor (number of blocks)
void setNumberDataBlocks(size_t nBlocks)
Set number of blocks.
virtual ~EventFeature()
Destructor.
static const std::string & featureTag()
Default feature tag.
FeatureType m_type
Internal cache for feature type.
unsigned int m_dataWords
Internal cache data structure description (words per block)
bool addDataBlock(const std::vector< double > &data)
@ ETDENSITY_JETAREA
FastJet density
@ ETDENSITY_JETAREA_ETA
FastJet density, dependent
@ ETDENSITY_USER
User defined density.
@ ETDENSITY_ETA_WINDOWS
density in sliding windows
void setFeatureStructure(bool updateCache=false)
Set/update feature structure.
void setTag(const std::string &tag)
Set feature tag.
bool dataBlock(size_t blockIdx, std::vector< double > &data)
Return one datablock.
size_t numberDataWords() const
Retrieve number of words in data block.
const std::vector< double > & dataList() const
Retrieve reference to vector store.
bool indexRange(size_t startIdx, index_t &idx)
bool insertDataBlock(size_t startIdx, size_t endIdx, const std::vector< double > &data)
void setDataList(const std::vector< double > &data)
Set vector data store.
std::pair< size_t, size_t > index_t
bool m_structureFixed
Control flag for setting number of data words.
unsigned int m_featureStructure
Internal cache for compressed data structure descriptor.
const std::string & tag() const
Retrieve feature tag.
EventFeature()
Default constructor.
std::string replace(std::string s, const std::string &s2, const std::string &s3)