Needs the same logic as the ambiguity after building the objects (make sure they are all valid)
19 {
22 static const SG::AuxElement::Accessor<
23 std::vector<ElementLink<xAOD::CaloClusterContainer>>>
24 caloClusterLinks("constituentClusterLinks");
25
26 static const SG::AuxElement::Accessor<ElementLink<xAOD::EgammaContainer>>
27 ELink("ambiguityLink");
28
30 for (SrcT *src : *srcContainer) {
31 ELink(*src) = dummylink;
33 continue;
34 }
35
36 for (
37 size_t destIndex = 0;
38 destIndex < destContainer->
size();
39 ++destIndex
40 ) {
41 DestT *dest = destContainer->
at(destIndex);
43 continue;
44 }
45
46 if (caloClusterLinks(*(
dest->caloCluster())).at(0) ==
47 caloClusterLinks(*(
src->caloCluster())).at(0)) {
49 *destContainer, destIndex, ctx);
51 break;
52 }
53 }
54 }
55 }
ElementLink()
Default constructor.
const T * at(size_type n) const
Access an element, as an rvalue.
size_type size() const noexcept
Returns the number of elements in the collection.
ElementLink implementation for ROOT usage.
pointer & link(pointer p) const
Return a reference to the link for an element.
const uint16_t AuthorAmbiguous
Object Reconstructed by standard cluster-based algorithm.