00001 MuMomShift(const Int_t mode=0,
00002 const Int_t nevents=10,
00003 const Char_t *path="/star/data13/reco/dev/2001/10/",
00004 const Char_t *file="st_physics_2304060_raw_0303.event.root",
00005 const Char_t* outDir="./"){
00006
00007 Char_t *tpath = "";
00008
00009 gROOT->Macro("$STAR/StRoot/StMuDSTMaker/COMMON/macros/loadSharedLibraries.C");
00010
00011
00012
00013 if ( path != "-") tpath = path;
00014
00015 StChain *chain=new StChain();
00016 StMuDstMaker *mudst_mk=new StMuDstMaker(mode,0,tpath,file);
00017
00018 StMuMomentumShiftMaker *mom_mk=new StMuMomentumShiftMaker(outDir);
00019
00020 Int_t i_event=0;
00021 while (mudst_mk->Make()==kStOk && i_event < nevents) {
00022 StMuEvent *event=mudst_mk->muDst()->event();
00023 Float_t mag_field=event->runInfo().magneticField();
00024 if (mag_field < 2.46)
00025 mom_mk->setScaleFactor(0.499/0.49);
00026 else
00027 mom_mk->setScaleFactor(1);
00028 mom_mk->Make();
00029 i_event++;
00030 }
00031 mom_mk->Finish();
00032 }