StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StSsdStrip.hh
1 // $Id: StSsdStrip.hh,v 1.3 2008/10/20 19:25:48 bouchet Exp $
2 //
3 // $Log: StSsdStrip.hh,v $
4 // Revision 1.3 2008/10/20 19:25:48 bouchet
5 // propagate idMcTrack used for IdTruth
6 //
7 // Revision 1.2 2008/05/07 22:48:36 bouchet
8 // calculation of quality of hits used embedding
9 //
10 // Revision 1.1 2006/10/16 16:43:29 bouchet
11 // StSsdUtil regroups now methods for the classes StSsdStrip, StSsdCluster and StSsdPoint
12 //
13 // Revision 1.6 2005/03/18 14:15:51 lmartin
14 // missing CVS header added
15 //
16 
17 #ifndef STSSDSTRIP_HH
18 #define STSSDSTRIP_HH
19 
20 #define SSD_MAXIDMCHIT 5
21 #include "Rtypes.h"
23 {
24  public:
25 
26  StSsdStrip(Int_t rNStrip, Int_t rDigitSig, Float_t rSigma, Int_t rPedestal);
27  StSsdStrip(Int_t rNStrip, Int_t rDigitSig, Float_t rSigma, Int_t rPedestal, Int_t *rMcHit,Int_t *rMcTrack);
28  // Sls
29  StSsdStrip(Int_t rNStrip, Int_t rIdHit, Int_t rMcHit, Int_t rMcTrack, Float_t rAnalogSig);
30  // Spa
31  StSsdStrip(Int_t rNStrip, Int_t rMcStrip, Int_t rDigitSig, Float_t rAnalogSig, Int_t *rIdMcHit,Int_t *rMcTrack);
32  StSsdStrip(Int_t rNStrip, Int_t rMcStrip, Int_t rDigitSig, Float_t rAnalogSig, Int_t *rIdMcHit);
33  StSsdStrip(Int_t rNStrip, Int_t rMcStrip, Float_t rAnalogSig);
34  StSsdStrip(Int_t rNStrip, Int_t rDigitSig);
35 
36  ~StSsdStrip() {}
37  void setNStrip(Int_t rNStrip) { mNStrip = rNStrip; }
38  void setMcStrip(Int_t rMcStrip) { mMcStrip = rMcStrip; }
39  void setIdHit(Int_t rIdHit, Int_t iR) { mIdHit[iR] = rIdHit; }
40  void setIdMcHit(Int_t rIdMcHit, Int_t iR) { mIdMcHit[iR] = rIdMcHit; }
41  void setIdMcTrack(Int_t rIdMcTrack, Int_t iR) { mIdMcTrack[iR] = rIdMcTrack; }
42  void setDigitSig(Int_t rDigitSig) { mDigitSig = rDigitSig; }
43  void setNHits(Int_t rNHits) { mNHits = rNHits; }
44  void setAnalogSig(Float_t rAnalogSig) { mAnalogSig = rAnalogSig; }
45  void setPrevStrip(StSsdStrip *rPrevStrip) { mPrevStrip = rPrevStrip; }
46  void setNextStrip(StSsdStrip *rNextStrip) { mNextStrip = rNextStrip; }
47 
48  void setSigma(Float_t rSigma) { mSigma = rSigma; }
49  void setPedestal(Int_t iPedestal) { mPedestal = iPedestal; }
50 
51  Int_t getNStrip() { return mNStrip; }
52  Int_t getMcStrip() { return mMcStrip; }
53  Int_t getIdHit(Int_t iR) { return mIdHit[iR]; }
54  Int_t getIdMcHit(Int_t iR) { return mIdMcHit[iR]; }
55  Int_t getIdMcTrack(Int_t iR) { return mIdMcTrack[iR]; }
56  Int_t getDigitSig() { return mDigitSig; }
57  Int_t getNHits() { return mNHits; }
58  Float_t getAnalogSig() { return mAnalogSig; }
59  StSsdStrip* getPrevStrip() { return mPrevStrip; }
60  StSsdStrip* getNextStrip() { return mNextStrip; }
61 
62  Float_t getSigma() { return mSigma; }
63  Int_t getPedestal() { return mPedestal; }
64  void copyTo(StSsdStrip *ptrClone);
65  void print();
66 
67 private:
68  Char_t first[1];
69  Int_t mNStrip;
70  Int_t mMcStrip;
71  Int_t mIdHit[5];
72  Int_t mIdMcHit[5];
73  Int_t mIdMcTrack[5];
74  Int_t mDigitSig;
75  Int_t mNHits;
76  Int_t mPedestal;
77  Float_t mSigma;
78  Float_t mAnalogSig;
79  StSsdStrip *mPrevStrip;
80  StSsdStrip *mNextStrip;
81  Char_t last[1];
82 };
83 
84 #endif