00001
00010 #ifndef STAR_StXiMc
00011 #define STAR_StXiMc
00012 #include "StKinkMc.hh"
00013 #include "StXiI.hh"
00014 #include "StDecayMode.hh"
00015
00016
00017 class StXiMc : public StKinkMc, public virtual StXiI {
00018 public:
00019 StXiMc();
00020 StXiMc(StMcVertex*, StMcTrack*, StStrangeEvMuDst*);
00021 ~StXiMc();
00022
00023 Int_t V0Index();
00024 void SetV0Index(Int_t index);
00025
00027 Int_t charge() const;
00028
00029 Float_t decayVertexXiX() const;
00030 Float_t decayVertexXiY() const;
00031 Float_t decayVertexXiZ() const;
00032
00033 Float_t momBachelorX() const;
00034 Float_t momBachelorY() const;
00035 Float_t momBachelorZ() const;
00036
00038 TVector3 momXi();
00039 Float_t momXiX();
00040 Float_t momXiY();
00041 Float_t momXiZ();
00042
00044 TVector3 momXiAtPrimVertex();
00045 Float_t momXiAtPrimVertexX();
00046 Float_t momXiAtPrimVertexY();
00047 Float_t momXiAtPrimVertexZ();
00048
00049 Float_t decayVertexV0X() const {return 999.;}
00050 Float_t decayVertexV0Y() const {return 999.;}
00051 Float_t decayVertexV0Z() const {return 999.;}
00052 Float_t momPosX() const {return 999;}
00053 Float_t momPosY() const {return 999;}
00054 Float_t momPosZ() const {return 999;}
00055 Float_t momNegX() const {return 999;}
00056 Float_t momNegY() const {return 999;}
00057 Float_t momNegZ() const {return 999;}
00058 Float_t momV0X() const {return 999;}
00059 Float_t momV0Y() const {return 999;}
00060 Float_t momV0Z() const {return 999;}
00061
00064 Int_t decayMode() const;
00065 Int_t geantIdParent() const;
00066
00067 protected:
00068 Int_t v0;
00069 ClassDef(StXiMc,7)
00070 };
00071
00072 inline Int_t StXiMc::charge() const {return parentCharge();}
00073 inline Float_t StXiMc::decayVertexXiX() const {return positionX();}
00074 inline Float_t StXiMc::decayVertexXiY() const {return positionY();}
00075 inline Float_t StXiMc::decayVertexXiZ() const {return positionZ();}
00076 inline Float_t StXiMc::momBachelorX() const {return daughterMomentumX();}
00077 inline Float_t StXiMc::momBachelorY() const {return daughterMomentumY();}
00078 inline Float_t StXiMc::momBachelorZ() const {return daughterMomentumZ();}
00079 inline TVector3 StXiMc::momXi()
00080 {return TVector3(momXiX(), momXiY(), momXiZ());}
00081 inline Float_t StXiMc::momXiX() {return parentMomentumX();}
00082 inline Float_t StXiMc::momXiY() {return parentMomentumY();}
00083 inline Float_t StXiMc::momXiZ() {return parentMomentumZ();}
00084 inline TVector3 StXiMc::momXiAtPrimVertex()
00085 {return TVector3(momXiAtPrimVertexX(), momXiAtPrimVertexY(), momXiAtPrimVertexZ());}
00086 inline Float_t StXiMc::momXiAtPrimVertexX() {return parentPrimMomentumX();}
00087 inline Float_t StXiMc::momXiAtPrimVertexY() {return parentPrimMomentumY();}
00088 inline Float_t StXiMc::momXiAtPrimVertexZ() {return parentPrimMomentumZ();}
00089 inline Int_t StXiMc::V0Index() {return v0;}
00090 inline void StXiMc::SetV0Index(Int_t index) {v0=index;}
00091 inline Int_t StXiMc::geantIdParent() const {return StKinkMc::geantIdParent();}
00092 inline Int_t StXiMc::decayMode() const {return StKinkMc::decayMode();}
00093
00094
00095 #endif
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108
00109
00110
00111
00112
00113
00114
00115
00116
00117
00118
00119
00120
00121
00122
00123
00124
00125
00126
00127
00128
00129
00130
00131