Skip to content

Commit 598d198

Browse files
committed
Deploy preview for PR 70 🛫
1 parent f311e3a commit 598d198

File tree

6 files changed

+37
-1
lines changed

6 files changed

+37
-1
lines changed
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
export function reconnectAssociation(viewCurrentObjects, ids) {
2+
const idsToRemove = new Set();
3+
4+
for (const { collection } of Object.values(viewCurrentObjects.datatypes)) {
5+
for (const object of collection) {
6+
const associations = object.associations;
7+
8+
for (const [associationName, association] of Object.entries(
9+
associations
10+
)) {
11+
const toObject = association.to;
12+
const toId = `${toObject.index}-${toObject.collectionId}`;
13+
14+
if (ids.has(toId)) {
15+
viewCurrentObjects.associations[associationName].push(association);
16+
} else {
17+
idsToRemove.add(`${object.index}-${object.collectionId}`);
18+
}
19+
}
20+
}
21+
}
22+
23+
for (const [collectionName, { collection }] of Object.entries(
24+
viewCurrentObjects.datatypes
25+
)) {
26+
viewCurrentObjects.datatypes[collectionName].collection = collection.filter(
27+
(object) => !idsToRemove.has(`${object.index}-${object.collectionId}`)
28+
);
29+
}
30+
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
export function reconnectTree(viewCurrentObjects) {}
1+
export function reconnectTree(viewCurrentObjects, ids) {}

‎pr-preview/pr-70/js/views/views-dictionary.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import { recoParticleID, preFilterRecoParticleID } from "./recoparticleid.js";
1818
import { spanWithColor } from "../lib/html-string.js";
1919
import { scrollTopCenter, scrollTopLeft } from "../draw/scroll.js";
2020
import { reconnectMCParticleTree } from "../filters/reconnect/mcparticletree.js";
21+
import { reconnectAssociation } from "../filters/reconnect/association.js";
2122

2223
export const views = {
2324
"Monte Carlo Particle Tree": {
@@ -80,34 +81,39 @@ export const views = {
8081
viewFunction: mcRecoAssociation,
8182
scrollFunction: scrollTopCenter,
8283
preFilterFunction: preFilterMCReco,
84+
reconnectFunction: reconnectAssociation,
8385
collections: ["edm4hep::MCParticle", "edm4hep::ReconstructedParticle"],
8486
description: `<p>Association between Monte Carlo Particles and Reconstructed Particles. 1:1 relation.</p>`,
8587
},
8688
"Monte Carlo Particle-Track": {
8789
viewFunction: mcTrackAssociation,
8890
scrollFunction: scrollTopCenter,
8991
preFilterFunction: preFilterMCTrack,
92+
reconnectFunction: reconnectAssociation,
9093
collections: ["edm4hep::MCParticle", "edm4hep::Track"],
9194
description: `<p>Association between Monte Carlo Particles and Tracks. 1:1 relation.</p>`,
9295
},
9396
"Monte Carlo Particle-Cluster": {
9497
viewFunction: mcClusterAssociation,
9598
scrollFunction: scrollTopCenter,
9699
preFilterFunction: preFilterMCCluster,
100+
reconnectFunction: reconnectAssociation,
97101
collections: ["edm4hep::MCParticle", "edm4hep::Cluster"],
98102
description: `<p>Association between Monte Carlo Particles and Clusters. 1:1 relation.</p>`,
99103
},
100104
"ParticleID List": {
101105
viewFunction: particleIDList,
102106
scrollFunction: scrollTopLeft,
103107
preFilterFunction: preFilterParticleIDList,
108+
reconnectFunction: () => {},
104109
collections: ["edm4hep::ParticleID"],
105110
description: `<p>A list of ParticleIDs found in the event.</p>`,
106111
},
107112
"Vertex List": {
108113
viewFunction: vertexList,
109114
scrollFunction: scrollTopLeft,
110115
preFilterFunction: preFilterVertexList,
116+
reconnectFunction: () => {},
111117
collections: ["edm4hep::Vertex"],
112118
description: `<p>A list of Vertices found in the event.</p>`,
113119
},

0 commit comments

Comments
 (0)