9#include <analysis/utility/DecayForest.h>
21 unsigned int start = 0;
22 for (
unsigned int i = 0; i < full_decaystring.size(); ++i) {
23 if (full_decaystring[i] ==
'|') {
24 forest.emplace_back(full_decaystring.substr(start, i - start), removeRadiativeGammaFlag);
26 if (save_memory and
forest.back().isValid() and
forest.size() > 1)
31 if (not(save_memory and
forest.back().isValid() and
forest.size() > 1))
32 forest.emplace_back(full_decaystring.substr(start, full_decaystring.size() - start), removeRadiativeGammaFlag);
34 for (
unsigned int j = 1; j <
forest.size(); ++j) {
48 assert(
sizeof(
float) ==
sizeof(uint32_t));
58 bitconverter.f = decayHash;
59 integer =
static_cast<uint64_t
>(bitconverter.i) << 32;
63 bitconverter.f = decayHashExtended;
64 integer += bitconverter.i;
std::vector< DecayTree > forest
vector of DecayTrees
size_t m_first_valid_original
The first valid DecayTree.
static int decayHashFloatToInt(float decayHash, float decayHashExtended)
Convert DecayHashes outputted by ParticleMCDecayString module to an integer.
DecayForest(const std::string &full_decaystring, bool save_memory=true, bool removeRadiativeGammaFlag=false)
Create a DecayForest from a full decaystring outputted by ParticleMCDecayString.
Abstract base class for different kinds of events.