// Writes one or more JDL's corresponding to findex. If findex is negative,
// all run numbers are considered in one go (jdl). For non-negative indices
// they correspond to the indices in the array fInputFiles.
- if (!fInputFiles) return kFALSE;
+ if (!fInputFiles && !fMCLoop) return kFALSE;
TObject *os;
TString workdir;
if (!fProductionMode && !fGridWorkingDir.BeginsWith("/alice")) workdir = gGrid->GetHomeDirectory();
fGridJDL->SetOutputDirectory(Form("#alienfulldir#/../%s",fOutputSingle.Data()), "Output directory");
else {
fGridJDL->SetOutputDirectory(Form("%s/#alien_counter_03i#", fGridOutputDir.Data()), "Output directory");
- fMergingJDL->SetOutputDirectory(fGridOutputDir);
+// fMergingJDL->SetOutputDirectory(fGridOutputDir);
}
} else {
// One jdl to be submitted with 2 input parameters: data collection name and output dir prefix
return files.Data();
}
if (mgr->GetOutputEventHandler()) {
- aodfiles = mgr->GetOutputEventHandler()->GetOutputFileName();
+ aodfiles = "";
+ if (mgr->GetOutputEventHandler()->GetFillAOD())
+ aodfiles = mgr->GetOutputEventHandler()->GetOutputFileName();
TString extraaod = mgr->GetOutputEventHandler()->GetExtraOutputs();
- if (!extraaod.IsNull()) {
+ if (!extraaod.IsNull() && mgr->GetOutputEventHandler()->GetFillExtension()) {
aodfiles += ",";
aodfiles += extraaod;
}
if (fIncludePath.Length()) out << " gSystem->AddIncludePath(\"" << fIncludePath.Data() << "\");" << endl;
out << " gROOT->ProcessLine(\".include $ALICE_ROOT/include\");" << endl;
out << " printf(\"Include path: %s\\n\", gSystem->GetIncludePath());" << endl << endl;
+ if (fMCLoop && !fGeneratorLibs.IsNull()) {
+ out << "// MC generator libraries" << endl;
+ TObjArray *list = fGeneratorLibs.Tokenize(" ");
+ TIter next(list);
+ TObjString *str;
+ while((str=(TObjString*)next())) {
+ out << " gSystem->Load(\"" << str->GetName() << "\");" << endl;
+ }
+ delete list;
+ }
if (fAdditionalLibs.Length()) {
out << "// Add aditional AliRoot libraries" << endl;
TString additionalLibs = fAdditionalLibs;
out << "// Set temporary compilation directory to current one" << endl;
out << " gSystem->SetBuildDir(gSystem->pwd(), kTRUE);" << endl << endl;
out << " TString outputDir = dir;" << endl;
- out << " TString outputFiles = \"" << GetListOfFiles("out") << "\";" << endl;
+ if (IsMergeAOD())
+ out << " TString outputFiles = \"" << GetListOfFiles("outaod") << "\";" << endl;
+ else
+ out << " TString outputFiles = \"" << GetListOfFiles("out") << "\";" << endl;
out << " TString mergeExcludes = \"" << fMergeExcludes << " " << fRegisterExcludes << "\";" << endl;
out << " TObjArray *list = outputFiles.Tokenize(\",\");" << endl;
out << " TIter *iter = new TIter(list);" << endl;