Report problems to ATLAS LXR Team (with time and IP address indicated)

The LXR Cross Referencer

source navigation ]
diff markup ]
identifier search ]
general search ]
 
 
Architecture: linux ]
Version: head ] [ nightly ] [ GaudiDev ]
  Links to LXR source navigation pages for stable releases [ 12.*.* ]   [ 13.*.* ]   [ 14.*.* ]   [ 15.*.* ] 

001 #include "GaudiKernel/ToolFactory.h"
002 #include "GaudiKernel/SmartDataPtr.h"
003 #include "GaudiKernel/IDataProviderSvc.h"
004 
005 //----------------------------------------------------------------//
006 #include "muonEvent/Muon.h"
007 
008 //----------------------------------------------------------------//
009 #include "muonEvent/MuonContainer.h"
010 
011 #include "Particle/TrackParticle.h"
012 #include "Particle/TrackParticleContainer.h"
013 
014 #include "TrkParameters/MeasuredPerigee.h"
015 
016 #include "VxVertex/VxContainer.h"
017 
018 /////////////////////////////////////////////////////////
019 #include "STACOTools/UpdateStacoContainersTool.h"
020 
021 //----------------------------------------------------------------//
022 #include "STACOEvent/StacoObject.h"
023 #include "STACOEvent/StacoContainer.h"
024 
025 #include "STACOToolsInterfaces/IStacoToTrackTool.h" 
026 #include "STACOToolsInterfaces/IStacoEDMHelper.h"
027 #include "STACOToolsInterfaces/IStacoToParticleTool.h"
028 #include "STACOToolsInterfaces/IStacoToCombinedMuonTool.h"
029 
030 UpdateStacoContainersTool::UpdateStacoContainersTool(const std::string& t, 
031                                             const std::string& n,
032                                             const IInterface*  p ):AthAlgTool(t,n,p),
033 p_OwnEDMHelper          ( "StacoEDMHelper/ConfiguredStacoEDMHelper"                   ) ,
034 p_IStacoToTrackTool        ( "Trk::StacoToTrackTool/ConfiguredStacoToTrackTool"               ) ,
035 p_IStacoToParticleTool     ( "StacoToParticleTool/ConfiguredStacoToParticleTool"         ) ,
036 p_IStacoToCombinedMuonTool ( "StacoToCombinedMuonTool/ConfiguredStacoToCombinedMuonTool" ) 
037 {
038 
039   declareInterface<IUpdateStacoContainersTool>(this);
040 
041   declareProperty("StacoEDMHelper"          , p_OwnEDMHelper          ) ;
042   declareProperty("StacoToTrackTool"        , p_IStacoToTrackTool        ) ;
043   declareProperty("StacoToParticleTool"     , p_IStacoToParticleTool     ) ;
044   declareProperty("StacoToCombinedMuonTool" , p_IStacoToCombinedMuonTool ) ;
045 
046 }
047 
048 UpdateStacoContainersTool::~UpdateStacoContainersTool(){}
049 
050 // Initialize
051 StatusCode UpdateStacoContainersTool::initialize() {
052 
053   StatusCode sc = StatusCode::SUCCESS;
054 
055   msg(MSG::INFO) << "Initialisation started     " << endreq;
056 
057   sc = AthAlgTool::initialize(); 
058   if ( sc.isFailure() ) {
059     msg(MSG::FATAL) << " AthAlgTool::initialize() failed" << endreq;
060     return( StatusCode::FAILURE );
061   }
062 
063 
064 //Retrieve p_OwnEDMHelper
065   if ( p_OwnEDMHelper.retrieve().isFailure() ) {
066     msg(MSG::FATAL) << "Failed to retrieve tool " << p_OwnEDMHelper << endreq;
067     return StatusCode::FAILURE;
068   }
069   msg(MSG::INFO) << "Retrieved tool " << p_OwnEDMHelper << endreq;
070 
071 
072 //Retrieve p_IStacoToTrackTool
073   if ( p_IStacoToTrackTool.retrieve().isFailure() ) {
074     msg(MSG::FATAL) << "Failed to retrieve tool " << p_IStacoToTrackTool << endreq;
075     return StatusCode::FAILURE;
076   }
077   msg(MSG::INFO) << "Retrieved tool " << p_IStacoToTrackTool << endreq;
078 
079 
080 //Retrieve p_IStacoToParticleTool
081   if ( p_IStacoToParticleTool.retrieve().isFailure() ) {
082     msg(MSG::FATAL) << "Failed to retrieve tool " << p_IStacoToParticleTool << endreq;
083     return StatusCode::FAILURE;
084   }
085   msg(MSG::INFO) << "Retrieved tool " << p_IStacoToParticleTool << endreq;
086 
087 
088 //Retrieve p_IStacoToCombinedMuonTool
089   if ( p_IStacoToCombinedMuonTool.retrieve().isFailure() ) {
090     msg(MSG::FATAL) << "Failed to retrieve tool " << p_IStacoToCombinedMuonTool << endreq;
091     return StatusCode::FAILURE;
092   }
093   msg(MSG::INFO) << "Retrieved tool " << p_IStacoToCombinedMuonTool << endreq;
094 
095 
096   msg(MSG::INFO) << "Initialisation ended     " << endreq;
097 
098   return StatusCode::SUCCESS;
099 
100 }
101 
102 void UpdateStacoContainersTool::UpdateContainers(
103                           StacoObject*  pStacoObject,
104                           const Rec::TrackParticleContainer* pTrackParticleContainerID  ,
105                           const VxContainer*                 pVxContainer               ,
106                           const Rec::TrackParticleContainer* pTrackParticleContainerMS ,
107                           const Rec::TrackParticleContainer* pTrackParticleContainerMSOnly ,
108                           StacoContainer*                    pStacoContainer ,
109                           TrackCollection*                   pTrackCollectionSTACO ,            
110                           Rec::TrackParticleContainer*       pTrackParticleContainerSTACO ,
111                           Analysis::MuonContainer*           pCombinedMuonContainerSTACO 
112 ){
113 
114 //Update pStacoContainer
115   if (pStacoContainer==0) return;
116   if (pStacoObject==0) return;
117   pStacoContainer->push_back(pStacoObject);
118   
119 //Update pTrackCollectionSTACO
120   if (pTrackCollectionSTACO==0) return;
121   Trk::Track* pTrackSTACO 
122     = p_IStacoToTrackTool->convert(
123                                   *pStacoObject
124                                  );
125   if (pTrackSTACO==0) return ;
126   pTrackCollectionSTACO->push_back(pTrackSTACO);
127   
128 //Update pTrackParticleContainerSTACO
129   if (pTrackParticleContainerSTACO==0) return;
130   Rec::TrackParticle* pTrackParticleSTACO 
131     = p_IStacoToParticleTool->convert(
132                                      pStacoObject,
133                                      pTrackCollectionSTACO,
134                                      pVxContainer,
135                                      pTrackSTACO
136                                     );
137   if (pTrackParticleSTACO==0) return ;
138   pTrackParticleContainerSTACO->push_back(pTrackParticleSTACO);
139 
140 //Update pCombinedMuonContainerSTACO
141   if (pCombinedMuonContainerSTACO==0) return;
142   Analysis::Muon* pCombinedMuonSTACO 
143     = p_IStacoToCombinedMuonTool->convert(
144                                          pStacoObject,
145                                          pTrackParticleContainerID  ,
146                                          pTrackParticleContainerMS ,
147                                          pTrackParticleContainerMSOnly ,
148                                          pTrackParticleContainerSTACO    ,
149                                          pTrackParticleSTACO
150                                         );
151   if (pCombinedMuonSTACO==0) return ;
152   pCombinedMuonContainerSTACO->push_back(pCombinedMuonSTACO);
153 
154 }
155 
156 StatusCode UpdateStacoContainersTool::finalize(){return StatusCode::SUCCESS;}
157 

source navigation ] diff markup ] identifier search ] general search ]

Due to the LXR bug, the updates fail sometimes to remove references to deleted files. The Saturday's full rebuilds fix these problems
This page was automatically generated by the LXR engine. Valid HTML 4.01!