Line data Source code
1 : //--------------------------------------------------------------------------
2 : //
3 : // Environment:
4 : // This software is part of the EvtGen package developed jointly
5 : // for the BaBar and CLEO collaborations. If you use all or part
6 : // of it, please give an appropriate acknowledgement.
7 : //
8 : // Copyright Information: See EvtGen/COPYRIGHT
9 : // Copyright (C) 1998 Caltech, UCSB
10 : //
11 : // Module: EvtGen/EvtDiracParticle.hh
12 : //
13 : // Description:EvtDiracParticle particles i.e. spin 1/2 particles.
14 : //
15 : // Modification history:
16 : //
17 : // DJL/RYD September 25, 1996 Module created
18 : //
19 : //------------------------------------------------------------------------
20 :
21 : #ifndef EVTDIRACPARTICLE_HH
22 : #define EVTDIRACPARTICLE_HH
23 :
24 : #include "EvtGenBase/EvtDiracSpinor.hh"
25 : #include "EvtGenBase/EvtParticle.hh"
26 :
27 : class EvtId;
28 : class EvtVector4R;
29 :
30 : class EvtDiracParticle:public EvtParticle {
31 :
32 : public:
33 :
34 :
35 : EvtDiracParticle();
36 : virtual ~EvtDiracParticle();
37 : void init(EvtId part_n,const EvtVector4R& p4);
38 : void init(EvtId part_n,const EvtVector4R& p4,
39 : const EvtDiracSpinor &,const EvtDiracSpinor &,
40 : const EvtDiracSpinor &,const EvtDiracSpinor &);
41 0 : EvtDiracSpinor spParent(int i) const {return _spinorParent[i];}
42 0 : EvtDiracSpinor sp(int i) const {return _spinorRest[i];}
43 : EvtSpinDensity rotateToHelicityBasis() const;
44 : EvtSpinDensity rotateToHelicityBasis(double alpha,
45 : double beta,
46 : double gamma) const;
47 :
48 : private:
49 :
50 : EvtDiracSpinor _spinorRest[2];
51 : EvtDiracSpinor _spinorParent[2];
52 : EvtDiracParticle(const EvtDiracParticle& d);
53 : EvtDiracParticle& operator=(const EvtDiracParticle& d);
54 :
55 : };
56 : #endif
57 :
|