Needs the same logic as the ambiguity after building the objects (make sure they are all valid)
19 {
23 std::vector<ElementLink<xAOD::CaloClusterContainer>>>
24 caloClusterLinks("constituentClusterLinks");
25
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)) {
48 ElementLink<xAOD::EgammaContainer> link(
49 *destContainer, destIndex, ctx);
50 ELink(*src) = link;
51 break;
52 }
53 }
54 }
55 }
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.
SG::Accessor< T, ALLOC > Accessor
const uint16_t AuthorAmbiguous
Object Reconstructed by standard cluster-based algorithm.