adopted MusrRootDefinition doc to smart pointer use.

This commit is contained in:
suter_a 2023-10-31 08:00:22 +01:00
parent af13e78c52
commit de2d8394d3
2 changed files with 11 additions and 10 deletions

Binary file not shown.

View File

@ -274,7 +274,7 @@ An example program \verb!write_musrRoot_runHeader! which is writing a full run h
\begin{shaded} \begin{shaded}
\begin{verbatim} \begin{verbatim}
TMusrRunHeader *header = new TMusrRunHeader(); std::unique_ptr<TMusrRunHeader> header = std::make_unique<TMusrRunHeader>();
TMusrRunPhysicalQuantity prop; TMusrRunPhysicalQuantity prop;
\end{verbatim} \end{verbatim}
\end{shaded} \end{shaded}
@ -318,14 +318,15 @@ header->Set("DetectorInfo/Detector001/Time Zero Bin", 3419.0);
\begin{shaded} \begin{shaded}
\begin{verbatim} \begin{verbatim}
TFile *f = new TFile(fileName, "RECREATE", "write_musrRoot_runHeader"); std::unique_ptr<TFile> f = std::make_unique<TFile>(fileName, "RECREATE",
"write_musrRoot_runHeader");
if (f->IsZombie()) { if (f->IsZombie()) {
delete f;
return -1; return -1;
} }
// create the needed TFolder object // create the needed TFolder object
TFolder *runHeader = new TFolder("RunHeader", "MusrRoot Run Header Info"); std::unique_ptr<TFolder> runHeader = std::make_unique<TFolder>("RunHeader",
"MusrRoot Run Header Info");
// create the "directory" structure // create the "directory" structure
if (header->FillFolder(runHeader)) { if (header->FillFolder(runHeader)) {
@ -343,21 +344,22 @@ The following code snippet shows how the extract the full run header from the \m
\begin{shaded} \begin{shaded}
\begin{verbatim} \begin{verbatim}
TFile *f = new TFile(fileName, "READ", "read_musrRoot_runHeader"); std::unique_ptr<TFile> f = std::make_unique<TFile>(fileName, "READ",
"read_musrRoot_runHeader");
if (f->IsZombie()) { if (f->IsZombie()) {
delete f;
return -1; return -1;
} }
TFolder *runHeader = 0; TFolder *runHeader = nullptr;
f->GetObject("RunHeader", runHeader); f->GetObject("RunHeader", runHeader);
if (runHeader == 0) { if (runHeader == nullptr) {
cerr << endl << ">> **ERROR** Couldn't get top folder RunHeader"; cerr << endl << ">> **ERROR** Couldn't get top folder RunHeader";
closeFile(f); closeFile(f);
return -1; return -1;
} }
TMusrRunHeader *header = new TMusrRunHeader(fileName); std::unique_ptr<TMusrRunHeader> header =
std::make_unique<TMusrRunHeader>(fileName);
if (!header->ExtractAll(runHeader)) { if (!header->ExtractAll(runHeader)) {
cerr << endl << ">> **ERROR** couldn't extract all RunHeader information"; cerr << endl << ">> **ERROR** couldn't extract all RunHeader information";
@ -366,7 +368,6 @@ if (!header->ExtractAll(runHeader)) {
} }
f->Close(); f->Close();
delete f;
\end{verbatim} \end{verbatim}
\end{shaded} \end{shaded}