diff --git a/Projects/AlPhaPha/2024/Snakefile b/Projects/AlPhaPha/2024/Snakefile index 438df75facc8b90cfd3bdc842531c6a23726f08d..08299b90b3005433447c1fff33a0f248ce6f291c 100644 --- a/Projects/AlPhaPha/2024/Snakefile +++ b/Projects/AlPhaPha/2024/Snakefile @@ -26,7 +26,7 @@ rule all: input: expand("{file}",file=analysedfile) -# Règle pour convertir les fichiers .fast dans le dossier .cat en .root +# Règle pour convertir les fichiers raw en analysé rule npanalysis: input: f"{input_directory}/{{name}}.root" diff --git a/Projects/AlPhaPha/DataMacro/Merger.C b/Projects/AlPhaPha/DataMacro/Merger.C index e0acff44cd25a9144b9cbc5ad3152ba310d8cfd5..aea1e96403ffeb705ed143b8440f7f0de18f75c5 100644 --- a/Projects/AlPhaPha/DataMacro/Merger.C +++ b/Projects/AlPhaPha/DataMacro/Merger.C @@ -1,7 +1,7 @@ void Merger(int N, const char* outputDir, const char* outputFileName, const char* inputBaseName) { - TString outputPath = Form("%s/%s", outputDir, outputFileName); - TFile *outputFile = new TFile(outputPath, "RECREATE"); - TList *fileList = new TList(); + TString outputPath = Form("%s/%s.root", outputDir, outputFileName); + TFileMerger merger; + merger.OutputFile(outputPath, "RECREATE"); // Correct usage: specify the output file path directly for (int i = 0; i < N; i++) { TString fileName = Form("%s%d.root", inputBaseName, i); // Base name + index + .root @@ -10,18 +10,16 @@ void Merger(int N, const char* outputDir, const char* outputFileName, const char std::cerr << "Error opening file: " << fileName << std::endl; continue; } - fileList->Add(inputFile); + merger.AddFile(fileName); // Add file to the merger // Display progress int progress = ((i + 1) * 100) / N; std::cout << "\rMerging files: " << progress << "% complete." << std::flush; } - TFileMerger merger; - merger.OutputFile(outputFile, "RECREATE"); - merger.Merge(fileList); + // Perform the merge operation + merger.Merge(); std::cout << std::endl << "Merging completed! Output saved at: " << outputPath << std::endl; - outputFile->Close(); }