library: libVMC
#include "TVirtualMCStack.h"

TVirtualMCStack


class description - header file - source file - inheritance tree (.pdf)

class TVirtualMCStack : public TObject

Inheritance Chart:
TObject
<-
TVirtualMCStack
 
    This is an abstract class, constructors will not be documented.
    Look at the header to check for available constructors.


    public:
virtual ~TVirtualMCStack() static TClass* Class() virtual Int_t GetCurrentParentTrackNumber() const virtual TParticle* GetCurrentTrack() const virtual Int_t GetCurrentTrackNumber() const virtual Int_t GetNprimary() const virtual Int_t GetNtrack() const virtual TClass* IsA() const TVirtualMCStack& operator=(const TVirtualMCStack&) virtual TParticle* PopNextTrack(Int_t& itrack) virtual TParticle* PopPrimaryForTracking(Int_t i) virtual void PushTrack(Int_t toBeDone, Int_t parent, Int_t pdg, Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vx, Double_t vy, Double_t vz, Double_t tof, Double_t polx, Double_t poly, Double_t polz, TMCProcess mech, Int_t& ntr, Double_t weight, Int_t is) virtual void SetCurrentTrack(Int_t trackNumber) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members




Class Description

______________________________________________________________________________

 Interface to a user defined particles stack.
______________________________________________________________________________
~TVirtualMCStack()
void PushTrack(Int_t toBeDone, Int_t parent, Int_t pdg, Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vx, Double_t vy, Double_t vz, Double_t tof, Double_t polx, Double_t poly, Double_t polz, TMCProcess mech, Int_t& ntr, Double_t weight, Int_t is)
 Create a new particle and push into stack;
 toBeDone   - 1 if particles should go to tracking, 0 otherwise
 parent     - number of the parent track, -1 if track is primary
 pdg        - PDG encoding
 px, py, pz - particle momentum [GeV/c]
 e          - total energy [GeV]
 vx, vy, vz - position [cm]
 tof        - time of flight [s]
 polx, poly, polz - polarization
 mech       - creator process VMC code
 ntr        - track number (is filled by the stack
 weight     - particle weight
 is         - generation status code
TParticle* PopNextTrack(Int_t& itrack)
 The stack has to provide two pop mechanisms:
 The first pop mechanism required.
 Pop all particles with toBeDone = 1, both primaries and seconadies
TParticle* PopPrimaryForTracking(Int_t i)
 The second pop mechanism required.
 Pop only primary particles with toBeDone = 1, stacking of secondaries
 is done by MC
void SetCurrentTrack(Int_t trackNumber)
 Set the current track number
Int_t GetNtrack()
 Total number of tracks
Int_t GetNprimary()
 Total number of primary tracks
TParticle* GetCurrentTrack()
 Current track particle
Int_t GetCurrentTrackNumber()
 Current track number
Int_t GetCurrentParentTrackNumber()
 Number of the parent of the current track

Author: Ivana Hrivnacova, 27/03/2002
Last update: root/vmc:$Name: $:$Id: TVirtualMCStack.cxx,v 1.2 2003/09/23 14:03:15 brun Exp $


ROOT page - Class index - Class Hierarchy - 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.