HepMC_helper::IsStatusxx Class Reference

#include <IsStatusxx.h>

Inheritance diagram for HepMC_helper::IsStatusxx:

Inheritance graph
[legend]
Collaboration diagram for HepMC_helper::IsStatusxx:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 IsStatusxx (int stat)
IMCselectorcreate () const
bool operator() (const Particle *const p) const
bool operator() (const Particle &p) const
bool operator() (const Particle &p)

Private Attributes

int m_stat

Detailed Description

Definition at line 18 of file IsStatusxx.h.


Constructor & Destructor Documentation

HepMC_helper::IsStatusxx::IsStatusxx ( int  stat  )  [inline]

Definition at line 20 of file IsStatusxx.h.

00020 :m_stat(stat) { } 


Member Function Documentation

IMCselector * HepMC_helper::IsStatusxx::create (  )  const [virtual]

Implements HepMC_helper::IMCselector.

Definition at line 73 of file HepMC_helper.cxx.

00073 {return new IsStatusxx(*this);}

bool HepMC_helper::IsStatusxx::operator() ( const Particle *const   p  )  const [virtual]

Implements HepMC_helper::IMCselector.

Definition at line 46 of file HepMC_helper.cxx.

00046                                                              {
00047     const int fsCode = 3;
00048 
00049     int pStatus1 = p->status();
00050     int pStatus2 = pStatus1%100;
00051     
00052     if(m_stat != fsCode){return ( pStatus2 == m_stat)? true:false;}
00053     
00054     //This IsStatus has been initialised with the "usual" final state code.
00055     
00056     //Apply herwig history if the generator is Herwig. 
00057 
00058     int generCode  = p->parent_event()->signal_process_id()/1000000;
00059     
00060     //Herwig
00061     if (generCode == 2){
00062       return ((pStatus1 >= 101 && pStatus1 <= 103) ||
00063               (pStatus1 >= 120 && pStatus1 <= 125)) ? true:false;
00064     }
00065 
00066     //All other generators.....
00067     return ( pStatus2 == fsCode)? true:false;
00068 
00069   }

bool HepMC_helper::IsStatusxx::operator() ( const Particle p  )  const

Definition at line 70 of file HepMC_helper.cxx.

00070                                                         {
00071     return this->operator()(&p);
00072   } 

bool HepMC_helper::IMCselector::operator() ( const Particle p  )  [inline, inherited]

Definition at line 27 of file IMCselector.h.

00027 {return this->operator()(&p);} 


Member Data Documentation

int HepMC_helper::IsStatusxx::m_stat [private]

Definition at line 25 of file IsStatusxx.h.


The documentation for this class was generated from the following files:
Generated on Fri Sep 21 13:20:58 2007 for AtlfastUtils by  doxygen 1.5.1