|
ATLAS Offline Software
|
Go to the documentation of this file.
2 #ifndef _ClusterSplitProbabilityContainer_H_
3 #define _ClusterSplitProbabilityContainer_H_
5 #include "Identifier/Identifier.h"
7 #include <unordered_map>
12 class ClusterSplitProbabilityContainerCnv_p1;
48 constexpr
int splitmask = 0x7fff;
49 prob1 =
int(prob1 * splitmask)/(1.*splitmask);
50 prob2 =
int(prob2 * splitmask)/(1.*splitmask);
56 throw std::runtime_error(
"Failed to set cluster splitting probability.");
58 iter->second.updateSplitProbabilities(prob1,prob2);
62 return ret.first->second;
70 const std::unordered_map<ClusterIdentifier, ProbabilityInfo>&
81 #ifndef CLIDSVC_CLASSDEF_H
JetConstituentVector::iterator iterator
unsigned int ClusterIdentifier
static const ProbabilityInfo s_unset
ProbabilityInfo & setSplitInformation(const PrepRawData *cluster, float prob1, float prob2)
void setTooBigToBeSplit(const PrepRawData *cluster)
ProbabilityInfo * getSplitProbability(const PrepRawData *cluster)
void updateSplitProbabilities(float prob1, float prob2)
void setSplit(bool split)
std::unordered_map< ClusterIdentifier, ProbabilityInfo > m_splitProbMap
unsigned int hashAndIndex() const
combined index
Ensure that the ATLAS eigen extensions are properly loaded.
Container to associate Cluster with cluster splitting probabilities.
bool isTooBigToBeSplit() const
const IdentContIndex & getHashAndIndex() const
ProbabilityInfo(float prob1, float prob2)
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
const std::unordered_map< ClusterIdentifier, ProbabilityInfo > & splitProbMap() const
float splitProbability1() const
const ProbabilityInfo & splitProbability(const PrepRawData *cluster) const
static const ProbabilityInfo & getNoSplitProbability()
macros to associate a CLID to a type
float splitProbability2() const