00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046 #include "TH2.h"
00047 #include "TFile.h"
00048 #include "TKey.h"
00049 #include "StSvtPedMaker.h"
00050 #include "St_DataSetIter.h"
00051 #include "TObjectSet.h"
00052 #include "StMessMgr.h"
00053 #include "StarClassLibrary/StSequence.hh"
00054 #include "StSvtClassLibrary/StSvtHybridData.hh"
00055 #include "StSvtClassLibrary/StSvtHybridCollection.hh"
00056 #include "StSvtClassLibrary/StSvtData.hh"
00057 #include "StSvtClassLibrary/StSvtHybridPed.hh"
00058 #include "StSvtClassLibrary/StSvtHybridPixels2.hh"
00059 #include "StSvtClassLibrary/StSvtHybridStat.hh"
00060 #include "StSvtClassLibrary/StSvtHybridStat2.hh"
00061 #include "StSvtClassLibrary/StSvtConfig.hh"
00062 #include "StSvtDaqMaker/StSvtHybridDaqPed.hh"
00063
00064 ClassImp(StSvtPedMaker)
00065
00066
00067 StSvtPedMaker::StSvtPedMaker(const char *name, pedestalType type):StMaker(name)
00068 {
00069 fType = type;
00070
00071 fStat = NULL;
00072 fPed = NULL;
00073 fPedRms = NULL;
00074 fData = NULL;
00075
00076 fSvtStat = NULL;
00077 fSvtStat2 = NULL;
00078 fSvtPed = NULL;
00079 fSvtPedRms= NULL;
00080 fSvtData = NULL;
00081 mConfig = NULL;
00082 }
00083
00084
00085 StSvtPedMaker::~StSvtPedMaker()
00086 {
00087 delete fStat;
00088
00089 delete fPed;
00090 delete fPedRms;
00091 delete fData;
00092
00093 delete fSvtStat;
00094 delete fSvtStat2;
00095
00096
00097 }
00098
00099
00100 Int_t StSvtPedMaker::Init()
00101 {
00102
00103
00104 SetSvtData();
00105 getConfig();
00106
00107 SetSvtPed();
00108
00109 SetSvtRMSPed();
00110
00111 return StMaker::Init();
00112 }
00113
00114
00115 Int_t StSvtPedMaker::getConfig()
00116 {
00117 mConfig=NULL;
00118 St_DataSet *dataSet = NULL;
00119 dataSet = GetDataSet("StSvtConfig");
00120
00121 if (!dataSet)
00122 {
00123 gMessMgr->Warning() << " No SvtConfig data set" << endm;
00124 dataSet = new St_ObjectSet("StSvtConfig");
00125 AddConst(dataSet);
00126 mConfig=NULL;
00127 }
00128
00129 mConfig=((StSvtConfig*)(dataSet->GetObject()));
00130
00131 if (!mConfig) {
00132 gMessMgr->Warning() << "SvtConfig data set is empty- using raw data"<< endm;
00133 mConfig=new StSvtConfig();
00134
00135 if (!fSvtData)
00136 {
00137 gMessMgr->Warning() << "no raw data -seting default full configuration" << endm;
00138 mConfig->setConfiguration("FULL");
00139 } else mConfig->setConfiguration(fSvtData->getConfiguration());
00140
00141 dataSet->SetObject(mConfig);
00142 }
00143
00144
00145
00146 return kStOK;
00147 }
00148
00149
00150
00151 Int_t StSvtPedMaker::SetType(pedestalType option)
00152 {
00153 fType = option;
00154
00155 ResetStat();
00156 ResetPed();
00157
00158 return Init();
00159 }
00160
00161
00162 Int_t StSvtPedMaker::SetSvtData()
00163 {
00164 St_DataSet *dataSet;
00165
00166 dataSet = GetDataSet("StSvtRawData");
00167
00168 if( dataSet) fSvtData = (StSvtData*)(dataSet->GetObject());
00169
00170
00171 return kStOK;
00172 }
00173
00174
00175 Int_t StSvtPedMaker::SetSvtPed()
00176 {
00177 fSvtStat = new StSvtHybridCollection(mConfig->getConfiguration());
00178
00179 St_DataSet *dataSet;
00180 dataSet = (TObjectSet*)GetDataSet("StSvtPedestal");
00181
00182 if (!dataSet) {
00183 fPedSet = new TObjectSet("StSvtPedestal");
00184 AddConst(fPedSet);
00185
00186 fSvtPed = new StSvtHybridCollection(mConfig->getConfiguration());
00187 fPedSet->SetObject((TObject*)fSvtPed);
00188 assert(fSvtPed);
00189 }
00190 else {
00191 fSvtPed = (StSvtHybridCollection*)(dataSet->GetObject());
00192 assert(fSvtPed);
00193 }
00194
00195 return kStOK;
00196 }
00197
00198
00199 Int_t StSvtPedMaker::SetSvtPed2ndOrd()
00200 {
00201 fSvtStat2 = new StSvtHybridCollection(mConfig->getConfiguration());
00202
00203 fPedSet2 = new TObjectSet("StSvtPedestal2ndOrd");
00204 AddConst(fPedSet2);
00205
00206 fSvtPed2 = new StSvtHybridCollection(mConfig->getConfiguration());
00207 fPedSet2->SetObject((TObject*)fSvtPed2);
00208
00209 return kStOK;
00210 }
00211
00212
00213 Int_t StSvtPedMaker::SetSvtRMSPed()
00214 {
00215 St_DataSet *dataSet;
00216 dataSet = (TObjectSet*)GetDataSet("StSvtRMSPedestal");
00217
00218 if (!dataSet) {
00219 fPedRmsSet = new TObjectSet("StSvtRMSPedestal");
00220 AddConst(fPedRmsSet);
00221
00222 fSvtPedRms = new StSvtHybridCollection(mConfig->getConfiguration());
00223 fPedRmsSet->SetObject((TObject*)fSvtPedRms);
00224 assert(fSvtPedRms);
00225 }
00226 else {
00227 fSvtPedRms = (StSvtHybridCollection*)(dataSet->GetObject());
00228 assert(fSvtPedRms);
00229 }
00230
00231 return kStOK;
00232 }
00233
00234
00235 Int_t StSvtPedMaker::Make()
00236 {
00237 if (Debug()) gMessMgr->Debug() << "StSvtPedMaker::Make" << endm;
00238
00239 return kStOK;
00240 }
00241
00242
00243 Int_t StSvtPedMaker::AddStat()
00244 {
00245 if (Debug()) gMessMgr->Debug() << "StSvtPedMaker::AddStat" << endm;
00246
00247 int anodeID, nAnodes, nSeq, iseq, time, timeSeq, status;
00248 int capacitor, nSCAZero;
00249 int* anodeList;
00250 StSequence* Seq;
00251 int previousBin, nextBin, timeCap0th;
00252
00253 for (int barrel = 1;barrel <= fSvtData->getNumberOfBarrels();barrel++) {
00254 for (int ladder = 1;ladder <= fSvtData->getNumberOfLadders(barrel);ladder++) {
00255 for (int wafer = 1;wafer <= fSvtData->getNumberOfWafers(barrel);wafer++) {
00256 for (int hybrid = 1;hybrid <= fSvtData->getNumberOfHybrids();hybrid++) {
00257
00258
00259 if (fSvtData->getHybridIndex(barrel, ladder, wafer, hybrid) < 0) continue;
00260
00261 fData = (StSvtHybridData*)fSvtData->at(fSvtData->getHybridIndex(barrel, ladder, wafer, hybrid));
00262
00263 if (!fData) continue;
00264
00265 nSCAZero = fData->getSCAZero();
00266
00267
00268 timeCap0th = 128 - nSCAZero;
00269 if (timeCap0th == 128)
00270 timeCap0th = 0;
00271
00272
00273 if (timeCap0th == 0)
00274 previousBin = 127;
00275 else
00276 previousBin = timeCap0th - 1;
00277
00278
00279 if (timeCap0th == 127)
00280 nextBin = 0;
00281 else
00282 nextBin = timeCap0th + 1;
00283
00284
00285
00286
00287
00288
00289
00290
00291
00292
00293
00294 int idx = fSvtStat->getHybridIndex(barrel, ladder, wafer, hybrid);
00295 fStat = (StSvtHybridStat*)fSvtStat->at(idx);
00296 if (!fStat) {
00297 fStat = new StSvtHybridStat(barrel, ladder, wafer, hybrid);
00298 fSvtStat->put_at(fStat,idx);
00299 }
00300
00301 anodeList = NULL;
00302 nAnodes = fData->getAnodeList(anodeList);
00303
00304 for (int ianode=0;ianode<nAnodes;ianode++) {
00305
00306 anodeID = anodeList[ianode];
00307 Seq = NULL;
00308 nSeq = 0;
00309
00310 status = fData->getSequences(anodeID,nSeq,Seq);
00311
00312 for (iseq=0;iseq<nSeq;iseq++) {
00313 for (timeSeq=0; timeSeq<Seq[iseq].length; timeSeq++) {
00314
00315 time = Seq[iseq].startTimeBin + timeSeq;
00316
00317 if ( fType == kCapacitor ) {
00318
00319 if ((time == 0) || (time == 1)) continue;
00320
00321 capacitor = time + nSCAZero;
00322 if (capacitor > 127)
00323 capacitor -= 128;
00324
00325 fStat->fillMom((int)Seq[iseq].firstAdc[timeSeq],anodeID,capacitor);
00326
00327 }
00328 else if ( fType == kTime ) {
00329
00330 if ((time == previousBin) || (time == timeCap0th) || (time == nextBin)) continue;
00331
00332 fStat->fillMom((int)Seq[iseq].firstAdc[timeSeq],anodeID,time);
00333 }
00334 }
00335 }
00336 }
00337 }
00338 }
00339 }
00340 }
00341
00342 return kStOK;
00343 }
00344
00345
00346 Int_t StSvtPedMaker::AddStat2ndOrd()
00347 {
00348 int anodeID, nAnodes, nSeq, iseq, time, timeSeq, status;
00349 int capacitor, nSCAZero;
00350 int* anodeList;
00351 StSequence* Seq;
00352 int previousBin, nextBin, timeCap0th;
00353
00354 for (int barrel = 1;barrel <= fSvtData->getNumberOfBarrels();barrel++) {
00355 for (int ladder = 1;ladder <= fSvtData->getNumberOfLadders(barrel);ladder++) {
00356 for (int wafer = 1;wafer <= fSvtData->getNumberOfWafers(barrel);wafer++) {
00357 for (int hybrid = 1;hybrid <= fSvtData->getNumberOfHybrids();hybrid++) {
00358
00359
00360 if (fSvtData->getHybridIndex(barrel, ladder, wafer, hybrid) < 0) continue;
00361
00362 fData = (StSvtHybridData*)fSvtData->at(fSvtData->getHybridIndex(barrel, ladder, wafer, hybrid));
00363
00364 if (!fData) continue;
00365
00366 nSCAZero = fData->getSCAZero();
00367
00368
00369 timeCap0th = 128 - nSCAZero;
00370 if (timeCap0th == 128)
00371 timeCap0th = 0;
00372
00373
00374 if (timeCap0th == 0)
00375 previousBin = 127;
00376 else
00377 previousBin = timeCap0th - 1;
00378
00379
00380 if (timeCap0th == 127)
00381 nextBin = 0;
00382 else
00383 nextBin = timeCap0th + 1;
00384
00385
00386
00387
00388
00389
00390
00391
00392
00393
00394
00395
00396
00397 int idx = fSvtStat2->getHybridIndex(barrel, ladder, wafer, hybrid);
00398 fStat2 = (StSvtHybridStat2*)fSvtStat2->at(idx);
00399 if (!fStat2) {
00400 fStat2 = new StSvtHybridStat2(barrel, ladder, wafer, hybrid);
00401 fSvtStat2->put_at(fStat2,idx);
00402 }
00403
00404 anodeList = NULL;
00405 nAnodes = fData->getAnodeList(anodeList);
00406
00407 for (int ianode=0;ianode<nAnodes;ianode++) {
00408
00409 anodeID = anodeList[ianode];
00410 Seq = NULL;
00411 nSeq = 0;
00412
00413 status = fData->getSequences(anodeID,nSeq,Seq);
00414
00415 for (iseq=0;iseq<nSeq;iseq++) {
00416 for (timeSeq=0; timeSeq<Seq[iseq].length; timeSeq++) {
00417
00418 time = Seq[iseq].startTimeBin + timeSeq;
00419
00420 capacitor = time + nSCAZero;
00421 if (capacitor > 127)
00422 capacitor -= 128;
00423
00424
00425
00426 if ((time == 0) || (time == 1) ||
00427 (time == previousBin) || (time == timeCap0th) || (time == nextBin)) continue;
00428 fStat2->fillMom((int)Seq[iseq].firstAdc[timeSeq],anodeID,time,capacitor);
00429 }
00430 }
00431 }
00432 }
00433 }
00434 }
00435 }
00436
00437 return kStOK;
00438 }
00439
00440
00441 Int_t StSvtPedMaker::CalcPed()
00442 {
00443 if (Debug()) gMessMgr->Debug() << "StSvtPedMaker::CalcPed" << endm;
00444
00445 float rms = 0;
00446
00447 for (int barrel = 1;barrel <= fSvtData->getNumberOfBarrels();barrel++) {
00448 for (int ladder = 1;ladder <= fSvtData->getNumberOfLadders(barrel);ladder++) {
00449 for (int wafer = 1;wafer <= fSvtData->getNumberOfWafers(barrel);wafer++) {
00450 for (int hybrid = 1;hybrid <= fSvtData->getNumberOfHybrids();hybrid++) {
00451
00452 if (fSvtData->getHybridIndex(barrel, ladder, wafer, hybrid) < 0) continue;
00453 fStat = (StSvtHybridStat*)fSvtStat->at(fSvtStat->getHybridIndex(barrel, ladder, wafer, hybrid));
00454 if (!fStat) continue;
00455
00456 int idxPed = fSvtPed->getHybridIndex(barrel, ladder, wafer, hybrid);
00457 fPed = (StSvtHybridPed*)fSvtPed->at(idxPed);
00458
00459 if (!fPed) {
00460 fPed = new StSvtHybridPed(barrel, ladder, wafer, hybrid);
00461 fPed->setType(fType);
00462 fSvtPed->put_at(fPed,idxPed);
00463 }
00464
00465 int idxRms=0;
00466 if (fSvtPedRms) {
00467 idxRms = fSvtPedRms->getHybridIndex(barrel, ladder, wafer, hybrid);
00468 fPedRms = (StSvtHybridPixels*)fSvtPedRms->at(idxRms);
00469 if (!fPedRms) {
00470 fPedRms = new StSvtHybridPixels(barrel, ladder, wafer, hybrid);
00471 fSvtPedRms->put_at(fPedRms,idxRms);
00472 }
00473 }
00474
00475
00476 for (int anode=1; anode<=fPed->getNumberOfAnodes();anode++) {
00477 for (int time=0; time<fPed->getNumberOfTimeBins();time++) {
00478
00479 fPed->AddAt(fStat->getMean(anode,time),fPed->getPixelIndex(anode,time));
00480
00481
00482 rms += fStat->getRMS(anode,time);
00483
00484 if (fPedRms)
00485 fPedRms->AddAt(fStat->getRMS(anode,time),fPedRms->getPixelIndex(anode,time));
00486 }
00487 }
00488
00489 rms /= fPed->getNumberOfAnodes()*fPed->getNumberOfTimeBins();
00490 fPed->setRMS(rms);
00491
00492
00493
00494 }
00495 }
00496 }
00497 }
00498
00499 return kStOK;
00500 }
00501
00502
00503 Int_t StSvtPedMaker::CalcPed2ndOrd()
00504 {
00505 for (int barrel = 1;barrel <= fSvtData->getNumberOfBarrels();barrel++) {
00506 for (int ladder = 1;ladder <= fSvtData->getNumberOfLadders(barrel);ladder++) {
00507 for (int wafer = 1;wafer <= fSvtData->getNumberOfWafers(barrel);wafer++) {
00508 for (int hybrid = 1;hybrid <= fSvtData->getNumberOfHybrids();hybrid++) {
00509
00510 if (fSvtData->getHybridIndex(barrel, ladder, wafer, hybrid) < 0) continue;
00511
00512 fPed2 = (StSvtHybridPixels2*)fSvtPed2->at(fSvtPed2->getHybridIndex(barrel, ladder, wafer, hybrid));
00513 if (!fPed2)
00514 fPed2 = new StSvtHybridPixels2(barrel, ladder, wafer, hybrid);
00515
00516 fStat2 = (StSvtHybridStat2*)fSvtStat2->at(fSvtStat2->getHybridIndex(barrel, ladder, wafer, hybrid));
00517
00518 if (!fStat2) continue;
00519
00520 for (int time2=0; time2<fPed2->getNumberOfCapacitors();time2++) {
00521
00522 fPed = (StSvtHybridPed*)fPed2->getSvtHybridPixels(time2);
00523 if (!fPed)
00524 fPed = new StSvtHybridPed(barrel, ladder, wafer, hybrid);
00525 fPed->setType(fType);
00526
00527 for (int anode=1; anode<=fPed->getNumberOfAnodes();anode++) {
00528 for (int time=0; time<fPed->getNumberOfTimeBins();time++) {
00529
00530 fPed->AddAt( fStat2->getMean(anode,time,time2),fPed->getPixelIndex(anode,time));
00531
00532 }
00533 }
00534
00535 fPed2->setSvtHybridPixels(fPed,time2);
00536
00537 }
00538
00539 fSvtPed2->at(fSvtPed2->getHybridIndex(barrel, ladder, wafer, hybrid))
00540 = fPed2;
00541 }
00542 }
00543 }
00544 }
00545
00546 return kStOK;
00547 }
00548
00549
00550 Int_t StSvtPedMaker::WriteToFile(const char* fileName, char* option)
00551 {
00552 if (Debug()) gMessMgr->Debug() << "StSvtPedMaker::WriteToFile" << endm;
00553
00554 TFile *file = new TFile(fileName,"RECREATE");
00555 char name[20];
00556
00557 for (int barrel = 1;barrel <= fSvtData->getNumberOfBarrels();barrel++) {
00558 for (int ladder = 1;ladder <= fSvtData->getNumberOfLadders(barrel);ladder++) {
00559 for (int wafer = 1;wafer <= fSvtData->getNumberOfWafers(barrel);wafer++) {
00560 for (int hybrid = 1;hybrid <= fSvtData->getNumberOfHybrids();hybrid++) {
00561
00562 if (fSvtData->getHybridIndex(barrel, ladder, wafer, hybrid) < 0) continue;
00563
00564 fPed = (StSvtHybridPed*)fSvtPed->at(fSvtPed->getHybridIndex(barrel, ladder, wafer, hybrid));
00565
00566 if (fPed) {
00567 sprintf(name,"Ped_%d_%d_%d_%d",barrel, ladder, wafer, hybrid);
00568 fPed->Write(name);
00569 }
00570 }
00571 }
00572 }
00573 }
00574
00575 file->Close();
00576
00577 return kStOK;
00578 }
00579
00580
00581 Int_t StSvtPedMaker::WriteRMSToFile(const char* fileName, char* option)
00582 {
00583 if (Debug()) gMessMgr->Debug() << "StSvtPedMaker::WriteToFile" << endm;
00584
00585 TFile *file = new TFile(fileName,"RECREATE");
00586 char name[20];
00587
00588 for (int barrel = 1;barrel <= fSvtData->getNumberOfBarrels();barrel++) {
00589 for (int ladder = 1;ladder <= fSvtData->getNumberOfLadders(barrel);ladder++) {
00590 for (int wafer = 1;wafer <= fSvtData->getNumberOfWafers(barrel);wafer++) {
00591 for (int hybrid = 1;hybrid <= fSvtData->getNumberOfHybrids();hybrid++) {
00592
00593 if (fSvtData->getHybridIndex(barrel, ladder, wafer, hybrid) < 0) continue;
00594
00595 fPedRms = (StSvtHybridPixels*)fSvtPedRms->at(fSvtPed->getHybridIndex(barrel, ladder, wafer, hybrid));
00596
00597 if (fPedRms) {
00598 sprintf(name,"Ped_%d_%d_%d_%d",barrel, ladder, wafer, hybrid);
00599 fPedRms->Write(name);
00600 }
00601 }
00602 }
00603 }
00604 }
00605
00606 file->Close();
00607
00608 return kStOK;
00609 }
00610
00611
00612 Int_t StSvtPedMaker::ReadFromFile(const char* fileName)
00613 {
00614 if (Debug()) gMessMgr->Debug() << "StSvtPedMaker::ReadFromFile" << endm;
00615
00616 TFile *file = new TFile(fileName);
00617 if (file->IsZombie()){
00618 gMessMgr->Info() << "Error reading file:" <<fileName<< endm;
00619 return kStOk;
00620 }
00621 char name[20];
00622
00623 for (int barrel = 1;barrel <= mConfig->getNumberOfBarrels();barrel++) {
00624 for (int ladder = 1;ladder <= mConfig->getNumberOfLadders(barrel);ladder++) {
00625 for (int wafer = 1;wafer <= mConfig->getNumberOfWafers(barrel);wafer++) {
00626 for (int hybrid = 1;hybrid <= mConfig->getNumberOfHybrids();hybrid++) {
00627
00628 if (mConfig->getHybridIndex(barrel, ladder, wafer, hybrid) < 0) continue;
00629
00630 sprintf(name,"Ped_%d_%d_%d_%d",barrel, ladder, wafer, hybrid);
00631 fPed = (StSvtHybridPed*)file->Get(name);
00632
00633 if (fPed) {
00634 int idx = fSvtPed->getHybridIndex(barrel, ladder, wafer, hybrid);
00635 delete fSvtPed->at(idx); fSvtPed->at(idx)=0;
00636 fSvtPed->put_at(fPed,idx);
00637 }
00638 }
00639 }
00640 }
00641 }
00642
00643 file->Close();
00644
00645 return kStOK;
00646 }
00647
00648
00649 Int_t StSvtPedMaker::ReadRMSFromFile(const char* fileName)
00650 {
00651 if (Debug()) gMessMgr->Debug() << "StSvtPedMaker::ReadRMSFromFile" << endm;
00652
00653 TFile *file = new TFile(fileName);
00654 if (file->IsZombie()){
00655 gMessMgr->Info() << "Error reading file:" <<fileName<< endm;
00656 return kStOk;
00657 }
00658 char name[20];
00659
00660 for (int barrel = 1;barrel <= mConfig->getNumberOfBarrels();barrel++) {
00661 for (int ladder = 1;ladder <= mConfig->getNumberOfLadders(barrel);ladder++) {
00662 for (int wafer = 1;wafer <= mConfig->getNumberOfWafers(barrel);wafer++) {
00663 for (int hybrid = 1;hybrid <= mConfig->getNumberOfHybrids();hybrid++) {
00664
00665 if (mConfig->getHybridIndex(barrel, ladder, wafer, hybrid) < 0) continue;
00666
00667 sprintf(name,"Ped_%d_%d_%d_%d",barrel, ladder, wafer, hybrid);
00668 fPedRms = (StSvtHybridPixels*)file->Get(name);
00669
00670 if (fPedRms) {
00671 int idx = fSvtPedRms->getHybridIndex(barrel, ladder, wafer, hybrid);
00672 delete fSvtPedRms->at(idx); fSvtPedRms->at(idx)=0;
00673 fSvtPedRms->put_at(fPedRms,idx);
00674
00675 }
00676 }
00677 }
00678 }
00679 }
00680
00681 file->Close();
00682
00683 return kStOK;
00684 }
00685
00686
00687 Int_t StSvtPedMaker::ResetStat()
00688 {
00689 if (Debug()) gMessMgr->Debug() << "StSvtPedMaker::ResetStat" << endm;
00690
00691 for (int i=0; i<fSvtStat->getTotalNumberOfHybrids();i++) {
00692 fStat = (StSvtHybridStat*)fSvtStat->at(i);
00693 if (fStat)
00694 fStat->reset();
00695 }
00696
00697 return kStOK;
00698 }
00699
00700
00701 Int_t StSvtPedMaker::ResetPed()
00702 {
00703 if (Debug()) gMessMgr->Debug() << "StSvtPedMaker::ResetPed" << endm;
00704
00705 for (int i=0; i<fSvtPed->getTotalNumberOfHybrids();i++) {
00706 fPed = (StSvtHybridPed*)fSvtPed->at(i);
00707 if (fPed)
00708 fPed->reset();
00709 }
00710
00711 return kStOK;
00712 }
00713
00714
00715 Int_t StSvtPedMaker::Finish()
00716 {
00717 if (Debug()) gMessMgr->Debug() << "StSvtPedMaker::Finish" << endm;
00718
00719 return kStOK;
00720 }
00721
00722
00723 void StSvtPedMaker::PrintInfo()
00724 {
00725
00726 if (Debug()) StMaker::PrintInfo();
00727 }
00728