#ifndef SHERPA_SoftPhysics_Beam_Remnant_Handler_H #define SHERPA_SoftPhysics_Beam_Remnant_Handler_H #include "SHERPA/SoftPhysics/Soft_Collision_Handler.H" #include "REMNANTS/Main/Remnant_Handler.H" //#include "SHRiMPS/Main/Shrimps.H" namespace SHERPA { class Beam_Remnant_Handler { private: REMNANTS::Remnant_Handler * p_remnants; //SHRIMPS::Shrimps * p_shrimps; BEAM::Beam_Spectra_Handler * p_beam; ATOOLS::Blob * p_beamblobs[2]; bool m_fill, m_vmode; int m_beam; std::string m_name; ATOOLS::Return_Value::code TreatNoFill(ATOOLS::Blob_List *const bloblist); ATOOLS::Blob * FillBunchBlob(const int,ATOOLS::Particle *); ATOOLS::Return_Value::code FillBunchBlobs(ATOOLS::Blob_List *const, ATOOLS::Particle_List *const=NULL); public : Beam_Remnant_Handler(BEAM::Beam_Spectra_Handler *const beam, REMNANTS::Remnant_Handler *const remnants, Soft_Collision_Handler *const softcollisions); ~Beam_Remnant_Handler(); ATOOLS::Return_Value::code FillBeamAndBunchBlobs(ATOOLS::Blob_List *const); void CleanUp(const size_t & mode=0); inline const int Fill() const { return m_fill; } inline const std::string & Name() const { return m_name; } }; } #endif