AliHLTOUTHandlerChain AliHLTMUONAgent::fgkESDMakerChain("libAliHLTMUON.so chains=dHLT-make-esd");
AliHLTOUTHandlerChain AliHLTMUONAgent::fgkRootifyDumpChain("libAliHLTMUON.so chains=dHLT-rootify-and-dump");
Int_t AliHLTMUONAgent::fgMuonModuleLoaded = 0;
+bool AliHLTMUONAgent::fgRunRootifyChain = false;
ClassImp(AliHLTMUONAgent);
return 1;
}
- if (dt == AliHLTMUONConstants::TriggerRecordsBlockDataType() or
- dt == AliHLTMUONConstants::TrigRecsDebugBlockDataType() or
- dt == AliHLTMUONConstants::RecHitsBlockDataType() or
- dt == AliHLTMUONConstants::ClusterBlockDataType() or
- dt == AliHLTMUONConstants::ChannelBlockDataType() or
- dt == AliHLTMUONConstants::MansoTracksBlockDataType() or
- dt == AliHLTMUONConstants::MansoCandidatesBlockDataType() or
- dt == AliHLTMUONConstants::TracksBlockDataType() or
- dt == AliHLTMUONConstants::SinglesDecisionBlockDataType() or
- dt == AliHLTMUONConstants::PairsDecisionBlockDataType()
- )
+ if (fgRunRootifyChain and
+ (dt == AliHLTMUONConstants::TriggerRecordsBlockDataType() or
+ dt == AliHLTMUONConstants::TrigRecsDebugBlockDataType() or
+ dt == AliHLTMUONConstants::RecHitsBlockDataType() or
+ dt == AliHLTMUONConstants::ClusterBlockDataType() or
+ dt == AliHLTMUONConstants::ChannelBlockDataType() or
+ dt == AliHLTMUONConstants::MansoTracksBlockDataType() or
+ dt == AliHLTMUONConstants::MansoCandidatesBlockDataType() or
+ dt == AliHLTMUONConstants::TracksBlockDataType() or
+ dt == AliHLTMUONConstants::SinglesDecisionBlockDataType() or
+ dt == AliHLTMUONConstants::PairsDecisionBlockDataType()
+ ))
{
HLTDebug("Indicating we can handle data type = %s and specification"
" = 0x%8.8X with dHLT-rootify-and-dump chain",
return &fgkESDMakerChain;
}
- if (dt == AliHLTMUONConstants::TriggerRecordsBlockDataType() or
- dt == AliHLTMUONConstants::TrigRecsDebugBlockDataType() or
- dt == AliHLTMUONConstants::RecHitsBlockDataType() or
- dt == AliHLTMUONConstants::ClusterBlockDataType() or
- dt == AliHLTMUONConstants::ChannelBlockDataType() or
- dt == AliHLTMUONConstants::MansoTracksBlockDataType() or
- dt == AliHLTMUONConstants::MansoCandidatesBlockDataType() or
- dt == AliHLTMUONConstants::TracksBlockDataType() or
- dt == AliHLTMUONConstants::SinglesDecisionBlockDataType() or
- dt == AliHLTMUONConstants::PairsDecisionBlockDataType()
- )
+ if (fgRunRootifyChain and
+ (dt == AliHLTMUONConstants::TriggerRecordsBlockDataType() or
+ dt == AliHLTMUONConstants::TrigRecsDebugBlockDataType() or
+ dt == AliHLTMUONConstants::RecHitsBlockDataType() or
+ dt == AliHLTMUONConstants::ClusterBlockDataType() or
+ dt == AliHLTMUONConstants::ChannelBlockDataType() or
+ dt == AliHLTMUONConstants::MansoTracksBlockDataType() or
+ dt == AliHLTMUONConstants::MansoCandidatesBlockDataType() or
+ dt == AliHLTMUONConstants::TracksBlockDataType() or
+ dt == AliHLTMUONConstants::SinglesDecisionBlockDataType() or
+ dt == AliHLTMUONConstants::PairsDecisionBlockDataType()
+ ))
{
return &fgkRootifyDumpChain;
}
*/
static bool IsMuonModuleLoaded();
+ /**
+ * \returns the flag indicating if the dHLT-rootify-and-dump chain should
+ * be run as a HLTOUT handler during reconstruction. The default is not
+ * to run this chain. The chain is used to convert HLT raw data blocks
+ * into ROOT objects, typically useful for testing and debugging.
+ */
+ static bool RunRootifyChain() { return fgRunRootifyChain; }
+
+ /**
+ * Sets the flag indicating if the dHLT-rootify-and-dump chain should be
+ * run during reconstruction.
+ */
+ static void RunRootifyChain(bool value) { fgRunRootifyChain = value; }
+
private:
// The following instance is used for automatic agent and component registration.
static AliHLTMUONAgent fgkInstance; ///< The single global instance of the dimuon HLT agent.
static AliHLTOUTHandlerChain fgkRootifyDumpChain; ///< Chain handler for converting dHLT raw data to ROOT objects and dumping to file.
static Int_t fgMuonModuleLoaded; ///< Cached flag for indicating if the MUON module was loaded for a simulation.
+ static bool fgRunRootifyChain; // Indicates if the dHLT-rootify-and-dump chain should be run.
ClassDef(AliHLTMUONAgent, 0); // Dimuon HLT module agent which handles processing configurations.
};