  | 
  
    ATLAS Offline Software
    
   | 
 
 
 
 
Go to the documentation of this file.
   44 #include "GaudiKernel/IChronoStatSvc.h" 
   51                    ISvcLocator* pSvcLocator) 
 
   54   , m_clusterCellLinkOutput(
"")
 
   55   , m_clusterMakerTools(this)
 
   56   , m_clusterCorrectionTools(this)
 
   57   , m_chrono(
"ChronoStatSvc", 
name)
 
   58   , m_saveSignalState(true)
 
   59   , m_chronoTools(false)
 
  101     ATH_MSG_DEBUG(
"Successfully retrieved maker ToolHandleArray " 
  106     ATH_MSG_ERROR(
"Failed to retrieve correction ToolHandleArray " 
  109     ATH_MSG_DEBUG(
"Successfully retrieved correction ToolHandleArray " 
  114     msg(
MSG::INFO) << 
"Will use ChronoStatSvc to monitor ClusterMaker and ClusterCorrection tools" << 
endmsg;
 
  130   return StatusCode::SUCCESS;
 
  136   return StatusCode::SUCCESS;
 
  148       ATH_CHECK( clusColl.
record(std::make_unique<xAOD::CaloClusterContainer>(),
 
  149                  std::make_unique<xAOD::CaloClusterTrigAuxContainer>()) );
 
  155   ToolHandleArray<CaloClusterCollectionProcessor>::const_iterator toolIt, toolIt_e; 
 
  161   for(;toolIt!=toolIt_e;++toolIt) {
 
  162     const std::string chronoName = this->
name() + 
"_" +toolIt->name();
 
  172       ATH_MSG_DEBUG( 
"found cluster with state "<< fClus->signalState());
 
  173       fClus->setRawE(fClus->calE());
 
  174       fClus->setRawEta(fClus->calEta());
 
  175       fClus->setRawPhi(fClus->calPhi());
 
  176       fClus->setRawM(fClus->calM());    
 
  185   for(;toolIt!=toolIt_e;++toolIt) {
 
  186     const std::string& 
toolname=(*toolIt).name();
 
  189     const std::string chronoName = this->
name() + 
"_" + 
toolname;
 
  201         decor_handle(*
cl) = 0;
 
  204         decor_handle(*
cl) = cell_links->
size();
 
  209   ATH_MSG_DEBUG(
"Created cluster container with " << clusColl->
size() << 
" clusters");
 
  214   return StatusCode::SUCCESS;
 
  
bool m_saveSignalState
controls saving the uncalibrated signal state just before the first CaloClusterCorrectionTool is invo...
 
static StatusCode finalizeClusters(SG::WriteHandle< CaloClusterCellLinkContainer > &h, xAOD::CaloClusterContainer *pClusterColl)
Finalize clusters (move CaloClusterCellLink to a separate container).
 
ServiceHandle< IChronoStatSvc > m_chrono
 
static StatusCode AddContainerWriteHandle(SG::WriteHandle< xAOD::CaloClusterContainer > &clusColl)
Creates a new xAOD::CaloClusterContainer in the given WriteHandle + CaloClusterAuxContainer and recor...
 
ToolHandleArray< CaloClusterCollectionProcessor > m_clusterMakerTools
a list of names for tools to make clusters
 
CaloClusterMaker(const std::string &name, ISvcLocator *pSvcLocator)
 
const std::string & key() const
Return the StoreGate ID for the referenced object.
 
An algorithm that can be simultaneously executed in multiple threads.
 
Bookkeeping of cells that make up a cluster Simplified replacement for CaloCellLink,...
 
ToolHandleArray< CaloClusterCollectionProcessor > m_clusterCorrectionTools
the actual list of tools corresponding to above names
 
virtual ~CaloClusterMaker() override
 
Description of a calorimeter cluster.
 
virtual StatusCode initialize() override
 
::StatusCode StatusCode
StatusCode definition for legacy code.
 
pointer_type ptr()
Dereference the pointer.
 
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
 
Handle class for adding a decoration to an object.
 
Handle class for adding a decoration to an object.
 
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
 
bool m_chronoTools
Use ChronotStatSvc to monitor each tool.
 
virtual StatusCode execute(const EventContext &ctx) const override
 
SG::WriteDecorHandleKey< xAOD::CaloClusterContainer > m_mDecor_ncells
Key to the handle for writing the number of cells as a decoration.
 
size_t size() const
size method
 
Helpers for checking error return status codes and reporting errors.
 
SG::WriteHandleKey< CaloClusterCellLinkContainer > m_clusterCellLinkOutput
the name of the key in StoreGate for the output CaloClusterCellLinkContainer
 
virtual StatusCode finalize() override
 
Gaudi::Property< bool > m_writeTriggerSpecificInfo
If true, writes some trigger-specific decorations.
 
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.
 
const std::string & getOutputContainerName() const
 
cl
print [x.__class__ for x in toList(dqregion.getSubRegions()) ]
 
size_type size() const noexcept
Returns the number of elements in the collection.
 
SG::WriteHandleKey< xAOD::CaloClusterContainer > m_clusterOutput
the name of the key in StoreGate for the output CaloClusterContainer