23 part->setTreePointer(
this);
27 prodVtx->setTreePointer(
this);
28 decVtx->setTreePointer(
this);
33 throw VertexException(
"KinematicTree::finalStateParticles; tree is empty or not consistent");
36 std::vector<RefCountedKinematicParticle> rs;
39 std::cout <<
"top particle has no daughters, empty vector returned" << std::endl;
43 bool next_right =
true;
64 throw VertexException(
"KinematicTree::FinalStateParticles; error occured while getting back");
93 throw VertexException(
"KinematicTree::currentDecayVertex; tree is empty!");
103 std::pair<bool, RefCountedKinematicParticle>
res;
110 throw VertexException(
"KinematicTree::motherParticle; tree is incorrect!");
115 throw VertexException(
"KinematicTree::motherParticle; tree is incorrect!");
116 }
while (*(
treeWalker->current().second) != *cr);
118 res = std::pair<bool, RefCountedKinematicParticle>(
true,
pr);
122 return std::pair<bool, RefCountedKinematicParticle>(
false, fk);
128 throw VertexException(
"KinematicTree::daughterParticles; tree is empty!");
129 std::vector<RefCountedKinematicParticle> sResult;
133 sResult.push_back(
treeWalker->current().second);
138 sResult.push_back(
treeWalker->current().second);
145 throw VertexException(
"KinematicTree::daughterParticles; error occured while getting back");
151 throw VertexException(
"KinematicTree::movePointerToTheTop; tree is empty!");
159 throw VertexException(
"KinematicTree::movePointerToTheTop; non consistent tree?");
164 throw VertexException(
"KinematicTree::currentProductionVertex; tree is empty!");
182 if (initial ==
treeWalker->current().second) {
194 throw VertexException(
"KinematicTree::Navigation failed, tree invalid?");
207 throw VertexException(
"KinematicTree::movePointerToTheTop; non consistent tree?");
214 throw VertexException(
"KinematicTree::currentParticle; tree is empty!");
220 throw VertexException(
"KinematicTree::movePointerToTheMother; tree is empty!");
222 bool cr =
treeWalker->current().first->vertexIsValid();
228 throw VertexException(
"KinematicTree::movePointerToTheFirstChild; tree is empty!");
234 throw VertexException(
"KinematicTree::movePointerToTheNextChild; tree is empty!");
241 throw VertexException(
"KinematicTree::findParticle; tree is empty or not consistent");
252 bool next_right =
false;
288 throw VertexException(
"KinematicTree::findParticle; tree is empty or not consistent");
307 }
while (
up && !fnd);
316 throw VertexException(
"KinematicTree::findParticle; tree is empty or not consistent");
335 }
while (
up && !fnd);
372 previous_decay = current_decay;
395 throw VertexException(
"KinematicTree::addTree; Current tree does not contain the vertex passed");