14 typedef CaloSamplingData::variable_store_type::size_type var_size_type;
18 for (var_size_type i=0;i<nVar;++i) {
21 CaloSamplingData::variable_store_type::const_iterator pos =
24 pos, pos + nSamplings);
41 for (
size_t i=0;i<nVar;++i) {
44 CaloSamplingData::variable_store_type::iterator pos =
60 unsigned int ncluster,
70 std::vector<unsigned int>::const_iterator it =
72 std::vector<unsigned int>::const_iterator end =
75 for (; it != end; ++it) {
91 <<
"Corrupted persistent data seen: "
92 << ncluster <<
" clusters != "
99 else if (nPersVars == 0 || (pers->
m_dataStore.size() % nPersVars) != 0) {
101 <<
"Corrupted persistent data seen: "
102 << pers->
m_dataStore.size() <<
" stored values is not a multiple of "
103 << nPersVars <<
" stored variables.";
Helpers for checking error return status codes and reporting errors.
#define REPORT_MESSAGE_WITH_CONTEXT(LVL, CONTEXT_NAME)
Report a message, with an explicitly specified context name.
void transToPers(const CaloSamplingData *trans, CaloSamplingDataContainer_p1 *pers, MsgStream &log) const
void persToTrans(const CaloSamplingDataContainer_p1 *pers, CaloSamplingData *trans, State &state) const
bool setState(const CaloSamplingDataContainer_p1 *pers, unsigned int ncluster, State &state) const
std::vector< unsigned int > m_varTypePatterns
std::vector< float > m_dataStore
Simple data object to store all variables in calorimeter samplings.
size_t index(size_t theVariable, size_t theSampling) const
CaloVariableType::VariableType variable_key_type
Variable look-up type.
unsigned int m_varTypePattern
size_t getNumberOfVariableTypes() const
Return number of variable types.
bool removeVariable(variable_key_type theVariable, sampling_key_type theSampling)
Remove a certain variable.
variable_store_type m_dataStore
std::vector< unsignedint >::const_iterator m_varTypePatternsIterator
CaloSamplingDataContainer_p1::const_iterator m_samplingStoreIterator
static unsigned int getAllVariableBits()