LCDMCDiag


class description - source file - inheritance tree

class LCDMCDiag : public LCDEventSource

    private:
public:
LCDMCDiag LCDMCDiag(char* ofile) LCDMCDiag LCDMCDiag(LCDMCDiag&) virtual void ~LCDMCDiag() static TClass* Class() void cleanup() Int_t doit() virtual Int_t GetEvent(LCDEvent* event) virtual TClass* IsA() const void Set_Momentum(Double_t mag, Double_t costheta, Double_t phi) void Set_Particles(Int_t num) void Set_Production_Time(Double_t time) void Set_Seed(UInt_t seed) void Set_Spread(Double_t magspread, Double_t costhspread, Double_t phispread) void Set_Start_Point(Double_t xpoint, Double_t ypoint, Double_t zpoint) void Set_Type(Int_t type) virtual void ShowMembers(TMemberInspector& insp, char* parent) Int_t spew(char* ofile) const virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members

private:
TRandom* factor Double_t m_MagSpread Double_t m_CosThSpread Double_t m_PhiSpread Int_t m_NumParticles Double_t m_xpoint Double_t m_ypoint Double_t m_zpoint Double_t m_prod_time Double_t m_mag Double_t m_phi Double_t m_costheta Double_t m_mass Int_t m_type Int_t istr Int_t ilbl static Int_t m_known_parts static Double_t m_known_masses static Int_t m_num_known_parts protected:
public:

Class Description

                                                                      
 LCDMCDiag                                                            
                                                                      
 The LCDMCDiag class produces a stream of N particles with their      
 momentum spread out in magnitude and direction. The resulting        
 particles are output to a file in StdHep format.                     
                                                                      


LCDMCDiag(char* ofile):m_MagSpread(0.0),m_CosThSpread(0.0),m_PhiSpread(0.0),m_NumParticles(1), m_xpoint(0),m_ypoint(0),m_zpoint(0),m_prod_time(0)
 Default constructor

void Set_Seed(UInt_t seed)
 Set the seed of the random number generator. If zero then seed
 is set to current machine clock

void Set_Spread(Double_t magspread, Double_t costhspread, Double_t phispread)
 The user is prompted for the momentum spread parameters

void Set_Momentum(Double_t mag, Double_t costheta, Double_t phi)
 Sets the mean components of the momentum vectors

void Set_Start_Point(Double_t xpoint, Double_t ypoint, Double_t zpoint)
 Sets the starting point of the particles(s).
 Default is (0,0,0) aka the IP.

void Set_Production_Time(Double_t time)
 Sets the time of production of the particles(s).
 Default is 0.0

void Set_Particles(Int_t num)
 Sets the number of particles

void Set_Type(Int_t type)
 Sets the particle type. NOTE: Must use StdHep numbering scheme.Particle
 mass is set from type

Int_t GetEvent(LCDEvent* event)

Int_t doit()
 Create the stream of Particles

Int_t spew(char* ofile)const
 Save the particle data into the hepevt common block
 Write the common block out ot file using StdHepXdrWrite()

void cleanup()
 Closes the output stream.



Inline Functions


            TClass* Class()
            TClass* IsA() const
               void ShowMembers(TMemberInspector& insp, char* parent)
               void Streamer(TBuffer& b)
               void StreamerNVirtual(TBuffer& b)
          LCDMCDiag LCDMCDiag(LCDMCDiag&)
               void ~LCDMCDiag()


ROOT page - Class index - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.