00001 // $Header: /cvs/lcd/slic/include/LcioMcpStatusSetter.hh,v 1.5 2008/09/10 00:04:58 jeremy Exp $ 00002 00003 #ifndef SLIC_LCIOMCPSTATUSSETTER_HH 00004 #define SLIC_LCIOMCPSTATUSSETTER_HH 1 00005 00006 // lcio 00007 #include "EVENT/MCParticle.h" 00008 #include "IMPL/MCParticleImpl.h" 00009 00010 namespace slic 00011 { 00012 class Trajectory; 00013 00020 class LcioMcpStatusSetter 00021 { 00022 private: 00023 LcioMcpStatusSetter() {} 00024 00025 public: 00026 // set Mcp status codes from trajectory 00027 static IMPL::MCParticleImpl* setMcpStatusCodesFromTrajectory( Trajectory*, IMPL::MCParticleImpl* ); 00028 static void setGeneratorStatus(EVENT::MCParticle* mcpInit, IMPL::MCParticleImpl* mcp); 00029 00030 private: 00031 // check and set MCP flags 00032 static void setVertexIsNotEndpointOfParentFlag( Trajectory*, IMPL::MCParticleImpl* ); 00033 static void setFinalStatusFlags( Trajectory*, IMPL::MCParticleImpl* ); 00034 static void setCreatedInSimulationFlag( Trajectory*, IMPL::MCParticleImpl* ); 00035 static void setBackscatterFlag( Trajectory*, IMPL::MCParticleImpl* ); 00036 }; 00037 } 00038 00039 #endif
1.5.4