+
+ for(Int_t ihs=0; ihs<6; ihs++){
+ fCurrentHitArray[ihs]=0x0;
+ fCurrentHitEvent[ihs]=0x0;
+ }
+
+ Bool_t bRead = readFromGridFile;
+
+ if (!bRead) {
+ FILE* fp0 = fopen(fFileName.Data(), "r");
+ if (fp0 != NULL) {
+ bRead=kTRUE;
+ fclose(fp0);
+ }
+ }
+
+ if (bRead) { // open file for reading
+ fFile = TFile::Open(fFileName.Data(), "READ");
+ if (fFile==NULL) { // grid file not found, create new local default file
+ printf("ERROR: AliITSOnlineSPDscan: File %s not found! Creating 'test999.root' file instead\n",fFileName.Data());
+ // create default empty file:
+ fFileName = "test999.root";
+ fScanInfo = new AliITSOnlineSPDscanInfo();
+ fInfoModified=kTRUE;
+ fFile = new TFile(fFileName.Data(), "RECREATE");
+ fWrite=kTRUE;
+ }
+ else { // read from file (grid or local)
+ fWrite=kFALSE;
+ fFile->GetObject("AliITSOnlineSPDscanInfo", fScanInfo);
+ }
+ }
+ else { // create new local file