StFms  0.0.0
FMS software in the STAR framework
StMuDstMaker.h
Go to the documentation of this file.
1 /***************************************************************************
2  *
3  * $Id: StMuDstMaker.h,v 1.59 2013/07/23 11:02:59 jeromel Exp $
4  * Author: Frank Laue, BNL, laue@bnl.gov
5  ***************************************************************************/
6 #ifndef StMuDstMaker_hh
7 #define StMuDstMaker_hh
8 
9 #include <string>
10 
11 #ifndef ST_NO_NAMESPACES
12 using namespace std;
13 #endif
14 
15 #include "StMaker.h"
16 #include "StChain.h"
17 #include "StIOInterFace.h"
18 #include "St_DataSetIter.h"
19 
20 #include "StMuArrays.h"
21 
22 #include "StMuFilter.h"
23 #include "StMuL3Filter.h"
24 
25 
26 class StMuEvent;
27 class StMuDst;
28 class StMuCut;
29 
30 class StEvent;
31 class StTrackNode;
32 class StTrack;
33 class StVertex;
34 class StRichSpectra;
35 class StDetectorState;
36 class StL3AlgorithmInfo;
37 
38 class StuProbabilityPidAlgorithm;
39 
40 class StIOMaker;
41 class StTreeMaker;
42 #ifndef __NO_STRANGE_MUDST__
43 class StStrangeEvMuDst;
45 class StStrangeMuDstMaker;
46 class StV0MuDst;
47 class StV0Mc;
48 class StXiMuDst;
49 class StXiMc;
50 class StKinkMuDst;
51 class StKinkMc;
52 class StStrangeAssoc;
53 class StStrangeCuts;
54 #endif
55 #include "StMuEmcCollection.h"
57 class StMuEmcUtil;
58 
60 #include "StMuFmsCollection.h"
61 class StMuFmsUtil;
62 
64 #include "StMuPmdCollection.h"
65 class StMuPmdUtil;
66 
67 // tof stuff
68 class StMuTofHit;
69 class StMuTofHitCollection;
70 class StTofCollection;
71 class StTofDataCollection;
72 // run 5 - dongx
73 class StTofRawDataCollection;
74 class StMuTofUtil;
75 // new btof
76 class StBTofCollection;
77 class StBTofRawHitCollection;
78 class StMuBTofHit;
79 class StMuBTofHitCollection;
80 class StMuBTofUtil;
81 
82 // ezTree stuff
83 class StMuEzTree;
84 
85 class TFile;
86 class TTree;
87 class TChain;
88 class TClonesArray;
89 class TEventList;
90 
91 class StMuRpsCollection;
92 class StMuMtdCollection;
93 
94 class StMuMtdHit;
95 class StMuMtdRawHit;
96 class StMuMtdHeader;
97 
109 class StMuDstMaker : public StIOInterFace {
110  public:
112  StMuDstMaker(const char* name="MuDst");
114  StMuDstMaker(int mode, int nameMode, const char* dirName="./", const char* fileName="", const char* filter=".", int maxfiles=10,
115  const char* name="MuDst");
116 
117  ~StMuDstMaker();
118 
119  virtual int Init();
120  virtual void Clear(Option_t *option="");
121  virtual int Make();
122  virtual Int_t MakeRead(const StUKey &RunEvent);
123  virtual Int_t MakeRead();
124  virtual Int_t MakeWrite();
125  virtual int Finish();
126  void printArrays();
127  void SetStatus(const char *arrType,int status);
129  void SetEventList( TEventList *e ) { mEventList = e; }
131  void setTrackFilter(StMuCut* c);
132  StMuFilter* trackFilter();
134  void setL3TrackFilter(StMuCut* c);
135  StMuL3Filter* l3TrackFilter();
137 
152  void setProbabilityPidFile(const char* file=NULL);
155  StMuDst* muDst();
157  TChain* chain();
159  TTree* tree();
160 
162  virtual const char *GetFile() const;
163 
165  void setSplit(int=99);
167  void setBufferSize(int=65536*4);
169  void setCompression(int comp=9);
170 
171  //Set for StTriggerData. Default is 2009.
172  void setStTriggerYear(int);
173 
174  StMuEmcUtil* muEmcUtil() { return mEmcUtil; }
175  StMuFmsUtil* muFmsUtil() { return mFmsUtil; }
176  StMuPmdUtil* muPmdUtil() { return mPmdUtil; }
177 
178  virtual const char *GetCVS() const {
179 
180  static const char cvs[]="Tag $Name: $ $Id: StMuDstMaker.h,v 1.59 2013/07/23 11:02:59 jeromel Exp $ built "__DATE__" "__TIME__ ;
181  return cvs;
182  }
183 
184 
185 
186 protected:
188  void connectEmcCollection();
189  void connectFmsCollection();
190  void connectPmdCollection();
191  enum ioMode {ioRead, ioWrite};
200  enum ioNameMode {ioFix=0, ioIOMaker, ioTreeMaker};
201 
202  StEvent* mStEvent;
203  StMuDst* mStMuDst;
204 #ifndef __NO_STRANGE_MUDST__
205  StStrangeMuDstMaker* mStStrangeMuDstMaker;
206 #endif
207  StIOMaker* mIOMaker;
208  StTreeMaker* mTreeMaker;
209  StMuEmcUtil* mEmcUtil;
211  StMuPmdUtil* mPmdUtil;
212  StMuTofUtil* mTofUtil;
214  StMuBTofUtil* mBTofUtil;
215  StMuEzTree* mEzTree;
216 
217  int mIoMode;
219  string mDirName;
220  string mFileName;
221  string mFilter;
223 
224  TEventList *mEventList;
225 
226  unsigned int mTrackType;
228  bool mReadV0s;
229  bool mReadXis;
231  bool mFinish;
232 
233  StMuCut* mTrackFilter;
234  StMuCut* mL3TrackFilter;
235 
236  TFile* mCurrentFile;
238 
239  TChain* mChain;
240  TTree* mTTree;
241 
243  int mSplit;
246 
247  TObjArray mVtxList; // List of pointers to vertices to keep track of track-vertex assignment when copying from StEvent
248 
249  StuProbabilityPidAlgorithm* mProbabilityPidAlgorithm;
250 
251 
252 #define saveDelete(t) { delete t; t=0;}
253 
255 
256 virtual void openWrite(string fileName);
257 virtual void write();
258 virtual void closeWrite();
259 
260  void streamerOff();
261 
262 virtual int openRead();
263 virtual void read();
264 void setBranchAddresses();
265 virtual void closeRead();
266 
267  void setBranchAddresses(TChain*);
268 
269  void assignArrays();
270  void clearArrays();
271  void zeroArrays();
272  void createArrays();
273  TClonesArray* clonesArray(TClonesArray*& p, const char* type, int size, int& counter);
274 
275  void fill();
276  void fillTrees(StEvent* ev, StMuCut* cut=0);
277  void fillEvent(StEvent* ev, StMuCut* cut=0);
278  void fillVertices(StEvent* ev);
279  void fillpp2pp(StEvent* ev);
280 
281  void fillsttrigger(StEvent* ev);
282  void fillPmd(StEvent* ev);
283  void fillEmc(StEvent* ev);
284  void fillFms(StEvent* ev);
285 #ifndef __NO_STRANGE_MUDST__
286  void fillStrange(StStrangeMuDstMaker*);
287 #endif
288  void fillMC();
289  void fillL3Tracks(StEvent* ev, StMuCut* cut=0);
290  void fillTracks(StEvent* ev, StMuCut* cut=0);
291  void fillDetectorStates(StEvent* ev);
292  void fillL3AlgorithmInfo(StEvent* ev);
293  void fillTof(StEvent* ev);
295  void fillBTof(StEvent* ev);
296  void fillMtd(StEvent* ev);
297  void fillFgt(StEvent* ev);
298 
299  void fillEzt(StEvent* ev);
300 
301  void fillHddr();
302 
303  template <class T, class U> int addType(TClonesArray* tcaTo , U &u, T *t);
304  template <class T> int addType(TClonesArray* tcaFrom, TClonesArray* &tcaTo ,T *t);
305  template <class T> int addType(TClonesArray* tcaTo , T &t);
306  void addTrackNode(const StEvent* ev, const StTrackNode* node, StMuCut* cut, TClonesArray* gTCA=0, TClonesArray* pTCA=0, TClonesArray* oTCA=0,
307  TClonesArray* covgTCA=0, TClonesArray* covpTCA=0, bool l3=false);
308  int addTrack(TClonesArray* tca, const StEvent* event, const StTrack* track, const StVertex *vtx, StMuCut* cut, int index2Global, bool l3=false,
309  TClonesArray* covgTCA=0, TClonesArray* covpTCA=0);
310 /* int addType(TClonesArray* tcaTo , StMuEmcCollection t); */
311 
312  StRichSpectra* richSpectra(const StTrack* track);
313 
314  void setStEvent(StEvent*);
315  StEvent* stEvent();
316 #ifndef __NO_STRANGE_MUDST__
317  void setStStrangeMuDstMaker(StStrangeMuDstMaker*);
318  StStrangeMuDstMaker* stStrangeMuDstMaker();
319 #endif
320  unsigned int trackType();
321  bool readTracks();
322 #ifndef __NO_STRANGE_MUDST__
323  bool readV0s();
324  bool readXis();
325  bool readKinks();
326 #endif
327  void setTrackType(unsigned int);
328  void setReadTracks(bool);
329 #ifndef __NO_STRANGE_MUDST__
330  void setReadV0s(bool);
331  void setReadXis(bool);
332  void setReadKinks(bool);
333 #endif
334  string basename(string);
335  string dirname(string);
336  string buildFileName(string dir, string fileName, string extention);
337 
338  friend class StMuDst;
339  friend class StMuDstFilterMaker;
340 
341  // Beware that this was added to counteract contiguous memory.
342  // See implementation for caveat
343  TClonesArray* mAArrays [__NALLARRAYS__];
344  TClonesArray** mArrays; //[__NARRAYS__ ];
345 #ifndef __NO_STRANGE_MUDST__
346  TClonesArray** mStrangeArrays;//[__NSTRANGEARRAYS__];
347 #endif
348  TClonesArray** mMCArrays;//[__NMCARRAYS__];
349  TClonesArray** mEmcArrays; //[__NEMCARRAYS__ ];
350  TClonesArray** mFmsArrays; //[__NFMSARRAYS__ ];
351  TClonesArray** mPmdArrays; //[__NPMDARRAYS__ ];
352  TClonesArray** mTofArrays; //[__NTOFARRAYS__ ];
354  TClonesArray** mBTofArrays; //[__NBTOFARRAYS__ ];
355  TClonesArray** mMtdArrays; //[__NMTDARRAYS__ ];
356  TClonesArray** mFgtArrays; //[__NFGTARRAYS__ ];
357  TClonesArray** mEztArrays; //[__NEZTARRAYS__ ];
358 
359  char mStatusArrays [__NALLARRAYS__ ];
360  TClonesArray* mEmcCollectionArray; // Needed to hold old format
361  StMuEmcCollection *mEmcCollection;
363  TClonesArray* mPmdCollectionArray; // Needed to hold old format
364  StMuPmdCollection *mPmdCollection;
365 
366  // Increment this by 1 every time the class structure is changed
367  ClassDef(StMuDstMaker, 3)
368 };
369 
370 inline StMuDst* StMuDstMaker::muDst() { return mStMuDst;}
371 inline TChain* StMuDstMaker::chain() { return mChain; }
372 inline TTree* StMuDstMaker::tree() { return mTTree; }
373 inline void StMuDstMaker::setTrackFilter(StMuCut* c) { mTrackFilter=c;}
374 inline void StMuDstMaker::setL3TrackFilter(StMuCut* c) { mL3TrackFilter=c;}
375 inline StMuFilter* StMuDstMaker::trackFilter() { return (StMuFilter*)mTrackFilter;}
376 inline StMuL3Filter* StMuDstMaker::l3TrackFilter() { return (StMuL3Filter*)mL3TrackFilter;}
377 #ifndef __NO_STRANGE_MUDST__
378 inline void StMuDstMaker::setStStrangeMuDstMaker(StStrangeMuDstMaker* s) {mStStrangeMuDstMaker=s;}
379 inline StStrangeMuDstMaker* StMuDstMaker::stStrangeMuDstMaker() {return mStStrangeMuDstMaker;}
380 #endif
381 inline void StMuDstMaker::setTrackType(unsigned int t) {mTrackType=t;}
382 inline unsigned int StMuDstMaker::trackType() {return mTrackType;}
383 
384 inline bool StMuDstMaker::readTracks() { return mReadTracks;}
385 #ifndef __NO_STRANGE_MUDST__
386 inline bool StMuDstMaker::readV0s() { return mReadV0s;}
387 inline bool StMuDstMaker::readXis() { return mReadXis;}
388 inline bool StMuDstMaker::readKinks() { return mReadKinks;}
389 #endif
390 inline void StMuDstMaker::setReadTracks(bool b) { mReadTracks=b;}
391 #ifndef __NO_STRANGE_MUDST__
392 inline void StMuDstMaker::setReadV0s(bool b) { mReadV0s=b;}
393 inline void StMuDstMaker::setReadXis(bool b) { mReadXis=b;}
394 inline void StMuDstMaker::setReadKinks(bool b) { mReadKinks=b;}
395 #endif
396 
397 inline void StMuDstMaker::setSplit(int split) { mSplit = split;}
398 inline void StMuDstMaker::setCompression(int comp) { mCompression = comp;}
399 inline void StMuDstMaker::setBufferSize(int buf) { mBufferSize = buf; }
400 
401 
402 #endif
403 
404 /***************************************************************************
405  *
406  * $Log: StMuDstMaker.h,v $
407  * Revision 1.59 2013/07/23 11:02:59 jeromel
408  * Undo changes (KF and other)
409  *
410  * Revision 1.57 2013/04/10 19:28:35 jeromel
411  * Step back to 04/04 version (van aware) - previous changes may be recoverred
412  *
413  * Revision 1.55 2012/11/15 22:26:13 sangalin
414  * Added the FGT. Fixed bugs in array offsets for the MTD.
415  *
416  * Revision 1.54 2012/09/28 22:38:05 tone421
417  * Changed array stucture of MTD upon request of the TOF group. MTD arrays now on top level, rather than within __NARRAYS__
418  *
419  * Revision 1.53 2011/05/04 19:51:32 tone421
420  * Added MTD infomation
421  *
422  * Revision 1.52 2011/04/08 01:25:50 fisyak
423  * Add branches for MC track and vertex information, add IdTruth to tracks and vertices, reserve a possiblity to remove Strange MuDst
424  *
425  * Revision 1.51 2010/05/26 04:25:50 tone421
426  * Added StTriggerData arrays in muevent and fixed an issue with PMD arrays being read....
427  *
428  * Revision 1.50 2010/01/25 03:57:39 tone421
429  * Added FMS and Roman pot arrays
430  *
431  * Revision 1.49 2010/01/21 02:08:17 fine
432  * RT #1803: Restore the broken MakeRead/MakeWrite interface to fix Skip event method
433  *
434  * Revision 1.48 2009/02/20 16:37:44 tone421
435  * *** empty log message ***
436  *
437  * Revision 1.46 2008/03/19 14:51:04 fisyak
438  * Add two clone arrays for global and primary track covariance matrices, remove mSigmaDcaD and mSigmaDcaZ
439  *
440  * Revision 1.45 2007/04/20 06:26:01 mvl
441  * Removed Q-vector calculation. Will implement utility class instead.
442  *
443  * Revision 1.43 2007/02/07 07:53:09 mvl
444  * Added SetEventList function to read only pre-selected events (by J. Webb)
445  *
446  * Revision 1.42 2006/02/08 23:35:36 mvl
447  * Added overloaded version for StIOInterface::GetFile() to return name
448  * of current input or output file (depending on read or write mode)
449  * StIOInterface::GetFileName() is an alias for this function.
450  *
451  * Revision 1.41 2005/07/15 21:45:09 mvl
452  * Added support for multiple primary vertices (StMuPrimaryVertex). Track Dcas are now calculated with repect to the first vertex in the list (highest rank), but another vertex number can be specified. Tarcks also store the index of the vertex they belong to (StMuTrack::vertexIndex())
453  *
454  * Revision 1.40 2005/04/12 21:56:29 mvl
455  * Changes by Xin Dong for year-5 TOF data format: extra TClonesArray and routines to fill it from StEvent (StTofRawData).
456  *
457  * Revision 1.39 2004/10/28 00:11:33 mvl
458  * Added stuff to support ezTree mode of MuDstMaker.
459  * This is a special mode for fast-online processing of fast-detector data.
460  *
461  * Revision 1.38 2004/10/19 01:42:29 mvl
462  * Changes for splitting Emc and Pmd collections. Emc clusters and points dropped
463  *
464  * Revision 1.37 2004/09/18 20:35:09 jeromel
465  * Little bit baffled by what CVS did around here
466  * http://www.star.bnl.gov/cgi-bin/cvsweb.cgi/StRoot/StMuDSTMaker/COMMON/StMuDstMaker.h.diff?r1=1.35&r2=1.36
467  * but re-comitting without the mess up (seems like source and h were merged)
468  *
469  * Revision 1.35 2004/09/18 01:28:18 jeromel
470  * *** empty log message ***
471  *
472  * Revision 1.34 2004/05/04 00:09:17 perev
473  *
474  * // Selecting SetBranchStatus for particular MuDst branches
475  * // Special names:
476  * // MuEventAll - all branches related to StMuEvent
477  * // StrangeAll - all branches related to StrangeMuDst
478  * // EmcAll - all branches related to Emc
479  * // PmdAll - all branches related to Pmd
480  * // TofAll - all branches related to Tof
481  * // By default all branches of MuDst are read. If user wants to read only some of
482  * // them, then:
483  * // SetStatus("*",0) // all branches off
484  * // SetStatus("MuEventAll",1) // all standard MuEvent branches ON
485  * // SetStatus("StrangeAll",1) // all standard Strange branches ON
486  * // SetStatus("EmcAll" ,1) // all standard Emc branches ON
487  * // SetStatus("PmdAll" ,1) // all standard Pmd branches ON
488  * // SetStatus("TofAll" ,1) // all standard Tof branches ON
489  * //
490  * // SetStatus("XiAssoc" ,1) // Strange branch "XiAssoc" is ON
491  * // Names of branches look StMuArrays::arrayTypes[]
492  * // It allows to speed up reading MuDst significantly
493  *
494  * Revision 1.33 2004/04/26 00:13:28 perev
495  * Cleanup+simplification
496  *
497  * Revision 1.32 2004/04/20 18:42:40 perev
498  * remove redundant arrays
499  *
500  * Revision 1.31 2004/04/15 00:26:14 perev
501  * fillHddr() added to fill time stamp ...
502  *
503  * Revision 1.30 2004/04/09 22:03:47 subhasis
504  * after tof createevent fix by Xin
505  *
506  * Revision 1.29 2004/04/09 03:36:15 jeromel
507  * Removed TOF support entirely for now as we need a working version ... Will
508  * revisit later.
509  *
510  * Revision 1.28 2004/04/02 03:24:54 jeromel
511  * Changes implements PMD and TOF. TOF is clearly incomplete.
512  *
513  * Revision 1.27 2004/02/17 04:56:36 jeromel
514  * Extended help, added crs support, restored __GNUC__ for PRETTY_FUNCTION(checked once
515  * more and yes, it is ONLY defined in GCC and so is __FUCTION__), use of a consistent
516  * internal __PRETTYF__, return NULL if no case selected (+message) and protected against
517  * NULL mChain.
518  *
519  * Revision 1.26 2003/11/09 01:02:59 perev
520  * more sofisticated clear() to fix leaks
521  *
522  * Revision 1.25 2003/10/30 20:08:13 perev
523  * Check of quality added
524  *
525  * Revision 1.24 2003/10/27 23:54:33 perev
526  * weird template bug fized and templates simplified
527  *
528  * Revision 1.23 2003/10/20 19:50:13 perev
529  * workaround added for TClonesArray::Delete + some cleanup of MuEmc
530  *
531  * Revision 1.22 2003/09/19 01:45:18 jeromel
532  * A few problems hopefully fixed i.e. one constructor lacked zeroing
533  * emcArrays were not zeroed, mStMuDst not zeroed.
534  * For maintainability zeroArrays() added.
535  *
536  * Revision 1.21 2003/09/02 17:58:44 perev
537  * gcc 3.2 updates + WarnOff
538  *
539  * Revision 1.20 2003/04/15 18:48:36 laue
540  * Minor changes to be able to filter MuDst.root files and an example
541  * how to do this. The StMuDstFilterMaker is just an example, it has to be
542  * customized (spoilers, chrome weels, etc.) by the user.
543  *
544  * Revision 1.19 2003/02/19 15:38:10 jeromel
545  * Modifications made to account for the new location of the PIDTable file.
546  * The setProbabilityPidFile() method has been modified to take care of a default
547  * file loading if unspecified. Messages will be displayed appropriatly.
548  * Macros mdoofied to not call the method (leave it handled through the default
549  * file).
550  *
551  * Revision 1.18 2003/01/29 03:04:57 laue
552  * !!DIRTY FIX FOR StMuEmcCollection
553  * !! Was memor leaking. Leak fixed, but slow and dirty.
554  * !! Propose to change the structure as soon as possible.
555  *
556  * Revision 1.17 2003/01/23 21:59:50 laue
557  * Modification to compile on Solaris.
558  *
559  * Revision 1.16 2003/01/09 18:59:45 laue
560  * initial check in of new EMC classes and the changes required
561  *
562  * Revision 1.15 2002/11/08 14:18:59 laue
563  * saveDelete(<T>) added, sets pointer=null after delete
564  *
565  * Revision 1.14 2002/09/11 21:02:41 laue
566  * added cut on track encoded method for ITTF
567  *
568  * Revision 1.13 2002/08/20 19:55:49 laue
569  * Doxygen comments added
570  *
571  * Revision 1.12 2002/05/20 17:23:31 laue
572  * StStrangeCuts added
573  *
574  * Revision 1.11 2002/05/04 23:56:30 laue
575  * some documentation added
576  *
577  * Revision 1.10 2002/04/26 20:57:31 jeromel
578  * Added GetCVS()
579  *
580  * Revision 1.9 2002/04/11 14:19:30 laue
581  * - update for RH 7.2
582  * - decrease default arrays sizes
583  * - add data base readerfor number of events in a file
584  *
585  * Revision 1.8 2002/04/01 22:42:30 laue
586  * improved chain filter options
587  *
588  * Revision 1.7 2002/03/28 05:10:34 laue
589  * update for running in the production
590  *
591  * Revision 1.6 2002/03/27 03:47:27 laue
592  * better filter options
593  *
594  * Revision 1.5 2002/03/27 00:50:11 laue
595  * bux fix from earlier check in
596  *
597  * Revision 1.4 2002/03/26 19:33:15 laue
598  * minor updates
599  *
600  * Revision 1.3 2002/03/20 16:04:11 laue
601  * minor changes, mostly added access functions
602  *
603  * Revision 1.2 2002/03/08 20:04:31 laue
604  * change from two trees to 1 tree per file
605  *
606  *
607  **************************************************************************/
TChain * mChain
Definition: StMuDstMaker.h:239
TEventList * mEventList
Definition: StMuDstMaker.h:224
TFile * mCurrentFile
Definition: StMuDstMaker.h:236
TClonesArray ** mFgtArrays
Definition: StMuDstMaker.h:356
StMuCut * mTrackFilter
Definition: StMuDstMaker.h:233
bool readV0s()
Definition: StMuDstMaker.h:386
StTreeMaker * mTreeMaker
Definition: StMuDstMaker.h:208
TClonesArray ** mFmsArrays
Definition: StMuDstMaker.h:350
string mDirName
Definition: StMuDstMaker.h:219
TTree * mTTree
Definition: StMuDstMaker.h:240
StMuEzTree * mEzTree
Definition: StMuDstMaker.h:215
string mFileName
Definition: StMuDstMaker.h:220
StMuFmsCollection * mFmsCollection
Definition: StMuDstMaker.h:362
bool readKinks()
Definition: StMuDstMaker.h:388
StMuEmcUtil * mEmcUtil
Definition: StMuDstMaker.h:209
TClonesArray ** mEztArrays
Definition: StMuDstMaker.h:357
TChain * chain()
In read mode, returns pointer to the chain of .MuDst.root files that where selected.
Definition: StMuDstMaker.h:371
TClonesArray ** mEmcArrays
Definition: StMuDstMaker.h:349
StStrangeMuDstMaker * mStStrangeMuDstMaker
Definition: StMuDstMaker.h:205
StMuL3Filter * l3TrackFilter()
Definition: StMuDstMaker.h:376
void setSplit(int=99)
Sets the split level for the file and all branches. Please refer to the ROOT manual (http://root...
Definition: StMuDstMaker.h:397
void setReadXis(bool)
Definition: StMuDstMaker.h:393
StMuEmcCollection * mEmcCollection
Definition: StMuDstMaker.h:361
void setStStrangeMuDstMaker(StStrangeMuDstMaker *)
Definition: StMuDstMaker.h:378
TClonesArray * mEmcCollectionArray
Definition: StMuDstMaker.h:360
void setReadKinks(bool)
Definition: StMuDstMaker.h:394
TObjArray mVtxList
Definition: StMuDstMaker.h:247
TTree * tree()
Returns pointer to the current TTree, the top level io structure that holds the event, track, v0, etc. information in branches of that tree.
Definition: StMuDstMaker.h:372
TClonesArray ** mMtdArrays
Definition: StMuDstMaker.h:355
void setBufferSize(int=65536 *4)
Sets the buffer size for all branches.
Definition: StMuDstMaker.h:399
void setL3TrackFilter(StMuCut *c)
Set the track filter used for L3 tracks when creating muDsts from StEvent and writing to disk...
Definition: StMuDstMaker.h:374
virtual const char * GetCVS() const
Definition: StMuDstMaker.h:178
unsigned int trackType()
Definition: StMuDstMaker.h:382
StMuCut * mL3TrackFilter
Definition: StMuDstMaker.h:234
StuProbabilityPidAlgorithm * mProbabilityPidAlgorithm
Definition: StMuDstMaker.h:249
void setCompression(int comp=9)
Sets the compression level for the file and all branches. 0 means no compression, 9 is the higher com...
Definition: StMuDstMaker.h:398
TClonesArray ** mMCArrays
Definition: StMuDstMaker.h:348
StMuFilter * trackFilter()
Definition: StMuDstMaker.h:375
TClonesArray ** mStrangeArrays
Definition: StMuDstMaker.h:346
void setTrackFilter(StMuCut *c)
Set the track filter used for all tracks (except the L3 tracks) when creating muDsts from StEvent and...
Definition: StMuDstMaker.h:373
string mCurrentFileName
Definition: StMuDstMaker.h:237
StMuPmdUtil * mPmdUtil
Definition: StMuDstMaker.h:211
StMuPmdCollection * mPmdCollection
Definition: StMuDstMaker.h:364
TClonesArray ** mTofArrays
Definition: StMuDstMaker.h:352
StMuPmdUtil * muPmdUtil()
return pointer to StMuPmdUtil;
Definition: StMuDstMaker.h:176
string mFilter
Definition: StMuDstMaker.h:221
TClonesArray ** mArrays
Definition: StMuDstMaker.h:344
void setReadV0s(bool)
Definition: StMuDstMaker.h:392
void SetEventList(TEventList *e)
Set event list for reading only preselected events (generate list using chain()->Draw() ...
Definition: StMuDstMaker.h:129
StMuEmcUtil * muEmcUtil()
return pointer to StMuEmcUtil;
Definition: StMuDstMaker.h:174
TClonesArray ** mBTofArrays
dongx
Definition: StMuDstMaker.h:354
StMuDst * mStMuDst
Definition: StMuDstMaker.h:203
StEvent * mStEvent
Definition: StMuDstMaker.h:202
StMuTofUtil * mTofUtil
Definition: StMuDstMaker.h:212
StMuFmsUtil * muFmsUtil()
return pointer to StMuFmsUtil;
Definition: StMuDstMaker.h:175
unsigned int mTrackType
Definition: StMuDstMaker.h:226
bool readTracks()
Definition: StMuDstMaker.h:384
StMuDst * muDst()
Definition: StMuDstMaker.h:370
StIOMaker * mIOMaker
Definition: StMuDstMaker.h:207
bool readXis()
Definition: StMuDstMaker.h:387
StMuBTofUtil * mBTofUtil
dongx
Definition: StMuDstMaker.h:214
StStrangeMuDstMaker * stStrangeMuDstMaker()
Definition: StMuDstMaker.h:379
void setReadTracks(bool)
Definition: StMuDstMaker.h:390
TClonesArray ** mPmdArrays
Definition: StMuDstMaker.h:351
TClonesArray * mPmdCollectionArray
Definition: StMuDstMaker.h:363
void setTrackType(unsigned int)
Definition: StMuDstMaker.h:381
StMuFmsUtil * mFmsUtil
Definition: StMuDstMaker.h:210