class AliVertexGenerator;
class AliCollisionGeometry;
+class AliGenEventHeader;
class AliStack;
-
class TGenerator;
public:
AliGenerator();
AliGenerator(Int_t npart);
- AliGenerator(const AliGenerator &gen);
virtual ~AliGenerator();
virtual void Init();
- void Copy(TObject &gen) const;
virtual void SetOrigin(Float_t ox, Float_t oy, Float_t oz);
virtual void SetOrigin(const TLorentzVector &o);
virtual void SetSigma(Float_t sx, Float_t sy, Float_t sz);
{fVertex[0] = vx; fVertex[1] = vy; fVertex[2] = vz;}
void SetVertexGenerator(AliVertexGenerator* vertexGenerator)
{fVertexGenerator = vertexGenerator; fVertexSource = kExternal; fVertexSmear = kPerEvent;}
+ void SetPileUpTimeWindow(Float_t pileUpTimeW) {fPileUpTimeWindow = pileUpTimeW;}
+
virtual void SetTrackingFlag(Int_t flag=1) {fTrackIt=flag;}
void Vertex();
void VertexExternal();
virtual void VertexInternal();
virtual void FinishRun();
virtual void SetMC(TGenerator *theMC) {fMCEvGen =theMC;}
- AliGenerator & operator=(const AliGenerator &gen);
+ virtual void AddHeader(AliGenEventHeader* /*header*/) {;}
+ virtual void SetContainer(AliGenerator* container) {fContainer = container;}
// Getters
//
VertexSmear_t fVertexSmear; //Vertex Smearing mode
VertexSource_t fVertexSource; //Vertex source (internal/external)
- Float_t fCutVertexZ; // Vertex cut in units of sigma_z
+ Float_t fCutVertexZ; //Vertex cut in units of sigma_z
+ Float_t fPileUpTimeWindow; //Time window for pile-up events
Int_t fTrackIt; // if 1, Track final state particles
AliVertexGenerator* fVertexGenerator; //! Generator for the vertex
TArrayF fOrigin; // Origin of event
TArrayF fOsigma; // Sigma of the Origin of event
- TArrayF fVertex; //! Vertex of current event
+ TArrayF fVertex; //! Vertex of current event
- AliStack* fStack; //! Local pointer to stack
+ AliStack* fStack; //! Local pointer to stack
+ AliGenerator* fContainer; //! Local pointer to container
+
AliCollisionGeometry* fCollisionGeometry; //!Collision geometry
/*************************************************************************/
enum {kThetaRange = BIT(14),
kYRange = BIT(18),
kMomentumRange = BIT(19)
};
+
+ private:
+ AliGenerator(const AliGenerator &gen);
+ AliGenerator & operator=(const AliGenerator &gen);
+
ClassDef(AliGenerator,3) // Base class for event generators
};