Пример #1
0
NoiseEvolution(char* path_, char* RunsList_){


  GetRuns(path_,RunsList_);

  //Open Reference File
  sprintf(refFile,"%s/Display_PedNoise_RunNb_%d.root",path,iov[0]);
  cout << "\nReference File " << refFile << endl;
  refFile_= new TRFIOFile(refFile);

  //Get Histo Names
  refFile_->cd("Noises");
  TIter nextkey(gDirectory->GetListOfKeys());
  TKey *key;
  while (key = (TKey*)nextkey()) {    
    const char * title;
    title=key->GetTitle();
    if (strncmp(title,"Noises_",6)==0 && strstr(title,"Cumulative")== NULL){
      vHistoNames.push_back(string(title));
      vHistoNBinsX.push_back(((TH1F*)key->ReadObj())->GetNbinsX());
      
      char tmp[128];
      LayerName(title,tmp);
      string tmp1(tmp);
      int i=0;
      while (i<vLayerName.size() && tmp1!=vLayerName[i]){i++;}
      if (i==vLayerName.size())
	vLayerName.push_back(tmp1);      
    }
  }

  book();

  
  for (int i=1;i<iovDim;i++){

    sprintf(inFile,"%s/Display_PedNoise_RunNb_%d.root",path,iov[i]);
    cout << "\nAnalyzing File " << inFile << endl;
    inFile_= new TRFIOFile(inFile);
  
    loop(iov[i]);
  }
  
  save();
}
Пример #2
0
  /** 
   * Run the code.  Query MonALisa for information.  
   * 
   * @param name      Production identifier 
   * @param mc        If true, assume simulations 
   * @param minSize   Least size of runs to use 
   * 
   * @return true on success. 
   */  
  Bool_t Run(const TString& name, Bool_t mc=false, ULong_t minSize=1000000)
  {
    fTmp = "prod";
    gSystem->TempFileName(fTmp);
    gSystem->Unlink(fTmp);
    gSystem->mkdir(fTmp);
    if (fDebug) Info("", "TMP=%s", fTmp.Data());

    fPath = "";
    fPass = "";
    fRuns = "";
    TString job;
    if (!GetJobUrl(name, mc, job)) return false;
    
    if (!GetRuns(job, mc, minSize)) return false;

    if (!fPass.IsNull()) fPass.Append("/");
    Printf("alien://%s?pattern=%s*/AliESDs.root&runs=%s", 
	   fPath.Data(), fPass.Data(), fRuns.Data());

    gSystem->Unlink(fTmp);
    return true;
  }