System : Linux
REST version : v2.2.9
I have produced a file restManager --c restPETSimManager.rml ( a file to process simulations in a PET configuration).
restPETSimManager.rml (4.8 KB)
The file looks ok … but
System : Linux
REST version : v2.2.9
I have produced a file restManager --c restPETSimManager.rml ( a file to process simulations in a PET configuration).
restPETSimManager.rml (4.8 KB)
The file looks ok … but
I cannot reproduce this problem because I do not have PET libraries.
I would say you are trying to write and read with a different version. Try to identify the source of the problem. It is the problem coming from the PET library, or, it is the problem coming from the fact that you are trying to read with a different REST version?
You may activate debug mode before OpenInputFile. run->SetVerboseLevel( REST_Debug);
If information is not enough to determine the source of the problem feel free to add few more debug << lines.
Ok, I’ve used the debug mode and I think there’s a problem with the PETAnalysis libraries since for any other file I get
but in case of TrestTrackPETAnalysis I will work a little more on that libraries TRestTrackPETAnalysisProcess.txt (6.1 KB)I’d rather think first the problem is from read/write with different REST versions.
You may get the version you used to write your class using any TRestMetadata class inside the file.
If you get problems reading the file do the following:
[0] TFile *f = new TFile( "xxx.root")
[1] .ls
[2] TRestGeant4Analysis *g4M = (TRestGeant4Analysis *) f->Get("g4Ana");
[3] g4M->GetVersion();
Now it is working (opening the file) if I write run->OpenInputFile(*“f”), but not getting all the information
. It finds the number of entries, but this number is no real since it should be around 400 entriesI have never seen run->OpenInputFile( *"f" );
It is strange, what kind of argument is that? What it is doing? It opens the last file?
Just a desperate “try”
As you can see in my second screen, I use run->OpenInputFile( “f” )
It must be a versioning problem.
I have just created a new release 2.2.10.
Try to get the new release, and try if you have no problems to open files generated with a 2.2.9/2.2.8/2.2.7 pure release.
git checkout tags/v2.2.10 -b v2.2.10
It opens the file but I have a problem with gas files
Is no longer possible to get gas information from local files? Up to now, I had this line in my .rml file
From the RML you provided restPETSimManager.rml
, it is much better that you specify server
, instead of a local file.
I believe you should be able to still use a local file, but the error message in yellow states that it cannot find the definition.
Try to change by the following sentence
<TRestGas name="${PET_GAS}" pressure="10" file="server"/>
where PET_GAS is a gas definition existing at https://sultan.unizar.es/gasFiles/gases.rml
Ok, it works … but I needed to perform the simulations and the processing using the same version (branch). Files created with another version gave I/O errors
“Error in TBufferFile::ReadObject: object tag too large, I/O buffer corrupted”