--- chewbacca/YodaProfiler/src/PamelaDBOperations.cpp 2008/11/28 10:57:44 1.12 +++ chewbacca/YodaProfiler/src/PamelaDBOperations.cpp 2008/12/04 09:00:18 1.15 @@ -101,6 +101,7 @@ if (INSERT_RAW) SetRawName(filerawname); // INSERT_ROOT = !filerootname.IsNull(); + if ( INSERT_ROOT ) this->SetRootName(filerootname); this->SetOrbitNo(dwinput); // this->SetID_RAW(0); @@ -189,13 +190,15 @@ throw -85; }; filerootname = chpath + chfile;// + ".root"; - if ( debug ) printf(" chewbacca: filename is %s \n",filerootname.Data()); }; this->SetRootName(filerootname); - file = TFile::Open(this->GetRootName().Data()); - } else { - this->SetRootName(""); }; + if ( debug ) printf(" Filename is %s \n",filerootname.Data()); + file = TFile::Open(this->GetRootName().Data()); + // } else { + // this->SetRootName(""); + // this->SetRootName(filerootname); + // }; } // @@ -395,23 +398,28 @@ return; }; // - TString name = this->GetRootFile(); - Int_t nlength = name.Length(); - if ( nlength < 5 ) return; - TString dwo = 0; - for (Int_t i = 0; i<5; i++){ - dwo.Append(name[i],1); - }; - if ( dwo.IsDigit() ){ - dworbit = (UInt_t)dwo.Atoi(); - } else { - dwo=""; - for (Int_t i = 8; i<13; i++){ + if ( !chewbacca ){ + TString name = this->GetRootFile(); + Int_t nlength = name.Length(); + if ( nlength < 5 ){ + if ( IsDebug() ) printf(" Agh problems determining the orbit number! name = %s \n",name.Data()); + return; + }; + TString dwo = 0; + for (Int_t i = 0; i<5; i++){ dwo.Append(name[i],1); - }; - if ( dwo.IsDigit() ) dworbit = (UInt_t)dwo.Atoi(); + }; + if ( dwo.IsDigit() ){ + dworbit = (UInt_t)dwo.Atoi(); + } else { + dwo=""; + for (Int_t i = 8; i<13; i++){ + dwo.Append(name[i],1); + }; + if ( dwo.IsDigit() ) dworbit = (UInt_t)dwo.Atoi(); + }; + if ( IsDebug() ) printf(" Downlink orbit is %i (dwo = %s) \n",dworbit,dwo.Data()); }; - if ( IsDebug() ) printf(" Downlink orbit is %i (dwo = %s) \n",dworbit,dwo.Data()); return; }; @@ -1577,6 +1585,7 @@ result = conn->Query(oss.str().c_str()); if ( !result ) throw -10; row = result->Next(); + if ( !row ) throw -92; idresof = (UInt_t)atoll(row->GetField(0)); existsts = true; goto eout; @@ -2382,7 +2391,7 @@ // if ( conptt+1 == (nrtev+nrtbef )){ if ( IsDebug() ) printf(" >>>>>>>>>>> %i %u %i %u \n",ptht,rhev,nrtev,conptt); ptht++; - if ( ptht < rhev ){ + if ( ptht < rhev ){ rh->GetEntry(ptht); //pth++; //if ( pth < rhev ){ @@ -2410,7 +2419,8 @@ if ( (UInt_t)evbeft < upperentry-1 && upperentry>0 ){ if ( IsDebug() ) printf(" Piece of run at the end of the file with NO RUNHEADER! evbeft %u upperentry-1 %u \n",(UInt_t)evbeft,upperentry-1); // - if ( (ptt-1) < 0 ) throw -15; // should never arrive here! + // if ( (ptt-1) < 0 ) throw -15; // should never arrive here! + if ( (rtev-1) < 0 || ptt < 0 ) throw -15; // should never arrive here! // rt->GetEntry(ptt-1); rt->GetEntry(rtev-1); cod = eht->GetCounter();