23 return StatusCode::SUCCESS;
29 const EventContext& ctx = Gaudi::Hive::currentContext();
33 if (!ditauJetsReadHandle.
isValid()) {
34 ATH_MSG_ERROR (
"Could not retrieve DiTauJetContainer with key " << ditauJetsReadHandle.
key());
35 return StatusCode::FAILURE;
41 for (
const auto ditau : *ditauContainer) {
42 float ditau_charge = 0;
43 for (
const auto& xTrack : ditau->trackLinks()) {
44 if (!xTrack.isValid())
47 if(ditau->nSubjets() >= 2){
48 for (
int i = 0;
i < 2; ++
i) {
49 TLorentzVector tlvSubjet = TLorentzVector();
50 tlvSubjet.SetPtEtaPhiE(ditau->subjetPt(
i), ditau->subjetEta(
i),
51 ditau->subjetPhi(
i), ditau->subjetE(
i));
52 double dR = tlvSubjet.DeltaR((*xTrack)->p4());
54 ditau_charge += (*xTrack)->charge();
60 dec_charge(*ditau) = ditau_charge;
63 return StatusCode::SUCCESS;