CASToR
1.0
Tomographic Reconstruction (PET/SPECT)
|
Implementation of class gDataConversionUtilities functions. More...
Go to the source code of this file.
Functions | |
vector< string > | CheckGATECommand (const string &a_key, const string &a_line) |
Check if the line contains the provided GATE command. In this case, parse the line and returns the values in a vector of strings. | |
vector< string > | Split (string a_line) |
Split the line provided in parameter into a vector of strings (separator is blankspace) | |
void | ConvertValuesTomm (vector< string > &ap_v) |
Check if the vector of strings passed in parameter contains the 'cm' unit In this case, convert all its values in mm. | |
template<class T > | |
int | WriteVector (ofstream &file, const string &a_key, vector< T > a_vals) |
Write the key and its values in the file provided in parameter. | |
template int | WriteVector (ofstream &file, const string &a_key, vector< double > a_vals) |
int | WriteVector (ofstream &file, const string &a_key, vector< string > a_vals) |
Write the key and its values in the file provided in parameter. | |
int | WriteVector (ofstream &file, const string &a_key, vector< vector< string > > a_vals) |
Write the key and its values contained in a 2 level vector of strings in the file provided in parameter. | |
int | GetGATEMacFiles (const string &a_pathMac, vector< string > &ap_pathToMacFiles) |
int | GetGATESystemType (const string &a_pathMac) |
Read a GATE macro file and identify the system type from the 'gate/systems/' command lines. | |
int | GetGATEAliasesCylindrical (vector< string > path_mac_files, string &rsector_name, string &module_name, string &submodule_name, string &crystal_name, vector< string > &layers_name, int vb) |
int | GetGATEAliasesEcat (vector< string > path_mac_files, string &block_name, string &crystal_name, int vb) |
Loop over a list of path to GATE macro files passed in parameter to recover aliases of the different parts of an ecat system. | |
int | GetGATEAliasesSPECT (vector< string > path_mac_files, string &base_name, string &crystal_name, string &pixel_name, int vb) |
Loop over a list of path to GATE macro files passed in parameter to recover aliases of the different parts of an ecat system. | |
uint32_t | ConvertIDecat (int32_t nBlocksPerRing, int32_t nBlocksLine, int32_t nCrystalsTransaxial, int32_t nCrystalsAxial, int32_t crystalID, int32_t blockID) |
uint32_t | ConvertIDSPECTRoot1 (int32_t a_headID, float_t a_rotAngle, float_t a_angStep, uint32_t a_nProjectionsByHead) |
uint32_t | ConvertIDSPECTRoot2 (uint32_t a_nbSimulatedPixels, uint32_t a_nPixTrs, uint32_t a_nPixAxl, int32_t a_headID, int32_t a_crystalID, int32_t a_pixelID, float_t a_rotAngle, float_t a_headAngPitch, float_t a_crystalSizeAxl, float_t a_crystalSizeTrs, float_t a_gPosX, float_t a_gPosY, float_t a_gPosZ) |
uint32_t | ConvertIDcylindrical (uint32_t nRsectorsPerRing, uint32_t nModulesTransaxial, uint32_t nModulesAxial, uint32_t nSubmodulesTransaxial, uint32_t nSubmodulesAxial, uint32_t nCrystalsTransaxial, uint32_t nCrystalsAxial, uint8_t nLayers, uint32_t *nCrystalPerLayer, vector< uint32_t > nLayersRptTransaxial, vector< uint32_t > nLayersRptAxial, int32_t layerID, int32_t crystalID, int32_t submoduleID, int32_t moduleID, int32_t rsectorID) |
Compute a CASToR crystal index of a GATE cylindricalPET system from its indexes (rsector/module/submodule/crystal) and the system layout. | |
int | ComputeKindGATEEvent (uint32_t eventID1, uint32_t eventID2, int comptonPhantom1, int comptonPhantom2, int rayleighPhantom1, int rayleighPhantom2) |
int | ReadMacCylindrical (string a_pathMac, uint8_t &nLayers, uint32_t *nb_crystal_per_layer, uint32_t &nCrystalsTot, uint32_t &nCrystalsAxial, uint32_t &nCrystalsTransaxial, vector< uint32_t > &nLayersRptAxial, vector< uint32_t > &nLayersRptTransaxial, uint32_t &nSubmodulesAxial, uint32_t &nSubmodulesTransaxial, uint32_t &nModulesAxial, uint32_t &nModulesTransaxial, uint32_t &nRsectorsPerRing, uint32_t &start_time_ms, uint32_t &duration_ms, int vb) |
int | ReadMacECAT (string a_pathMac, uint32_t &nCrystalsTot, uint32_t &nCrystalsAxial, uint32_t &nCrystalsTransaxial, uint32_t &nBlocksLine, uint32_t &nBlocksPerRing, uint32_t &start_time_ms, uint32_t &duration_ms, int vb) |
int | ReadMacSPECT (string a_pathMac, float_t &a_distToDetector, uint32_t &a_nHeads, uint32_t &a_nPixAxl, uint32_t &a_nPixTrs, float_t &a_crystalSizeAxl, float_t &a_crystalSizeTrs, uint32_t &a_nProjectionsTot, uint32_t &a_nProjectionsByHead, float_t &a_head1stAngle, float_t &a_headAngPitch, float_t &a_headAngStepDeg, int &a_headRotDirection, uint32_t &a_start_time_ms, uint32_t &a_duration_ms, int vb) |
int | ReadIntfSPECT (string a_pathIntf, float_t &a_distToDetector, uint32_t &a_nHeads, uint32_t &a_nPixAxl, uint32_t &a_nPixTrs, float_t &a_crystalSizeAxl, float_t &a_crystalSizeTrs, uint32_t &a_nProjectionsTot, uint32_t &a_nProjectionsByHead, float_t &a_head1stAngle, float_t &a_headAngPitchDeg, float_t &a_headAngStepDeg, int &a_headRotDirection, uint32_t &a_start_time_ms, uint32_t &a_duration_ms, int vb) |
int | CreateGeomWithCylindrical (string a_pathMac, string a_pathGeom) |
Read a GATE macro file containing the description of a cylindricalPET system, and convert it to a geom file. | |
int | CreateGeomWithECAT (string a_pathMac, string a_pathGeom) |
Read a GATE macro file containing the description of an ecat system, and convert it to a geom file. | |
int | CreateGeomWithSPECT (string a_pathMac, string a_pathGeom) |
Implementation of class gDataConversionUtilities functions.
Definition in file gDataConversionUtilities.cc.
vector<string> CheckGATECommand | ( | const string & | a_key, |
const string & | a_line | ||
) |
Check if the line contains the provided GATE command. In this case, parse the line and returns the values in a vector of strings.
a_key,: | string containing a GATE command to recover |
a_line | : string containing the line to check |
Values are converted in mm if 'cm' is found in the line
Definition at line 41 of file gDataConversionUtilities.cc.
int ComputeKindGATEEvent | ( | uint32_t | eventID1, |
uint32_t | eventID2, | ||
int | comptonPhantom1, | ||
int | comptonPhantom2, | ||
int | rayleighPhantom1, | ||
int | rayleighPhantom2 | ||
) |
Definition at line 925 of file gDataConversionUtilities.cc.
uint32_t ConvertIDcylindrical | ( | uint32_t | nRsectorsPerRing, |
uint32_t | nModulesTransaxial, | ||
uint32_t | nModulesAxial, | ||
uint32_t | nSubmodulesTransaxial, | ||
uint32_t | nSubmodulesAxial, | ||
uint32_t | nCrystalsTransaxial, | ||
uint32_t | nCrystalsAxial, | ||
uint8_t | nLayers, | ||
uint32_t * | nCrystalPerLayer, | ||
vector< uint32_t > | nLayersRptTransaxial, | ||
vector< uint32_t > | nLayersRptAxial, | ||
int32_t | layerID, | ||
int32_t | crystalID, | ||
int32_t | submoduleID, | ||
int32_t | moduleID, | ||
int32_t | rsectorID | ||
) |
Compute a CASToR crystal index of a GATE cylindricalPET system from its indexes (rsector/module/submodule/crystal) and the system layout.
nRsectorsPerRing | |
nModulesTransaxial | |
nModulesAxial | |
nSubmodulesTransaxial | |
nSubmodulesAxial | |
nCrystalsTransaxial | |
nCrystalsAxial | |
nLayers | |
nb_crystal_per_layer | |
nLayersRptTransaxial | |
nLayersRptAxial | |
layerID | |
crystalID | |
submoduleID | |
moduleID | |
rsectorID |
Definition at line 814 of file gDataConversionUtilities.cc.
uint32_t ConvertIDecat | ( | int32_t | nBlocksPerRing, |
int32_t | nBlocksLine, | ||
int32_t | nCrystalsTransaxial, | ||
int32_t | nCrystalsAxial, | ||
int32_t | crystalID, | ||
int32_t | blockID | ||
) |
Definition at line 655 of file gDataConversionUtilities.cc.
uint32_t ConvertIDSPECTRoot1 | ( | int32_t | a_headID, |
float_t | a_rotAngle, | ||
float_t | a_angStep, | ||
uint32_t | a_nProjectionsByHead | ||
) |
Definition at line 689 of file gDataConversionUtilities.cc.
uint32_t ConvertIDSPECTRoot2 | ( | uint32_t | a_nbSimulatedPixels, |
uint32_t | a_nPixTrs, | ||
uint32_t | a_nPixAxl, | ||
int32_t | a_headID, | ||
int32_t | a_crystalID, | ||
int32_t | a_pixelID, | ||
float_t | a_rotAngle, | ||
float_t | a_headAngPitch, | ||
float_t | a_crystalSizeAxl, | ||
float_t | a_crystalSizeTrs, | ||
float_t | a_gPosX, | ||
float_t | a_gPosY, | ||
float_t | a_gPosZ | ||
) |
Definition at line 728 of file gDataConversionUtilities.cc.
void ConvertValuesTomm | ( | vector< string > & | ap_v | ) |
Check if the vector of strings passed in parameter contains the 'cm' unit In this case, convert all its values in mm.
ap_v | : vector of strings |
Definition at line 101 of file gDataConversionUtilities.cc.
int CreateGeomWithCylindrical | ( | string | a_pathMac, |
string | a_pathGeom | ||
) |
Read a GATE macro file containing the description of a cylindricalPET system, and convert it to a geom file.
a_pathMac | : string containing the path to a GATE macro file |
a_pathGeom | : string containing the path to a CASToR output geom file |
Definition at line 2104 of file gDataConversionUtilities.cc.
int CreateGeomWithECAT | ( | string | a_pathMac, |
string | a_pathGeom | ||
) |
Read a GATE macro file containing the description of an ecat system, and convert it to a geom file.
a_pathMac | : string containing the path to a GATE macro file |
a_pathGeom | : string containing the path to a CASToR output geom file |
Definition at line 3020 of file gDataConversionUtilities.cc.
int CreateGeomWithSPECT | ( | string | a_pathMac, |
string | a_pathGeom | ||
) |
Definition at line 3474 of file gDataConversionUtilities.cc.
int GetGATEAliasesCylindrical | ( | vector< string > | path_mac_files, |
string & | rsector_name, | ||
string & | module_name, | ||
string & | submodule_name, | ||
string & | crystal_name, | ||
vector< string > & | layers_name, | ||
int | vb | ||
) |
Definition at line 362 of file gDataConversionUtilities.cc.
int GetGATEAliasesEcat | ( | vector< string > | path_mac_files, |
string & | block_name, | ||
string & | crystal_name, | ||
int | vb | ||
) |
Loop over a list of path to GATE macro files passed in parameter to recover aliases of the different parts of an ecat system.
path_mac_files | |
block_name | |
crystal_name | |
vb |
Definition at line 485 of file gDataConversionUtilities.cc.
int GetGATEAliasesSPECT | ( | vector< string > | path_mac_files, |
string & | base_name, | ||
string & | crystal_name, | ||
string & | pixel_name, | ||
int | vb | ||
) |
Loop over a list of path to GATE macro files passed in parameter to recover aliases of the different parts of an ecat system.
path_mac_files | |
base_name | |
crystal_name | |
pixel_name | |
vb |
Definition at line 569 of file gDataConversionUtilities.cc.
int GetGATEMacFiles | ( | const string & | a_pathMac, |
vector< string > & | ap_pathToMacFiles | ||
) |
Definition at line 232 of file gDataConversionUtilities.cc.
int GetGATESystemType | ( | const string & | a_pathMac | ) |
Read a GATE macro file and identify the system type from the 'gate/systems/' command lines.
a_pathMac | : path to a GATE macro file |
Definition at line 273 of file gDataConversionUtilities.cc.
int ReadIntfSPECT | ( | string | a_pathIntf, |
float_t & | a_distToDetector, | ||
uint32_t & | a_nHeads, | ||
uint32_t & | a_nPixAxl, | ||
uint32_t & | a_nPixTrs, | ||
float_t & | a_crystalSizeAxl, | ||
float_t & | a_crystalSizeTrs, | ||
uint32_t & | a_nProjectionsTot, | ||
uint32_t & | a_nProjectionsByHead, | ||
float_t & | a_head1stAngle, | ||
float_t & | a_headAngPitchDeg, | ||
float_t & | a_headAngStepDeg, | ||
int & | a_headRotDirection, | ||
uint32_t & | a_start_time_ms, | ||
uint32_t & | a_duration_ms, | ||
int | vb | ||
) |
Definition at line 1874 of file gDataConversionUtilities.cc.
int ReadMacCylindrical | ( | string | a_pathMac, |
uint8_t & | nLayers, | ||
uint32_t * | nb_crystal_per_layer, | ||
uint32_t & | nCrystalsTot, | ||
uint32_t & | nCrystalsAxial, | ||
uint32_t & | nCrystalsTransaxial, | ||
vector< uint32_t > & | nLayersRptAxial, | ||
vector< uint32_t > & | nLayersRptTransaxial, | ||
uint32_t & | nSubmodulesAxial, | ||
uint32_t & | nSubmodulesTransaxial, | ||
uint32_t & | nModulesAxial, | ||
uint32_t & | nModulesTransaxial, | ||
uint32_t & | nRsectorsPerRing, | ||
uint32_t & | start_time_ms, | ||
uint32_t & | duration_ms, | ||
int | vb | ||
) |
Definition at line 979 of file gDataConversionUtilities.cc.
int ReadMacECAT | ( | string | a_pathMac, |
uint32_t & | nCrystalsTot, | ||
uint32_t & | nCrystalsAxial, | ||
uint32_t & | nCrystalsTransaxial, | ||
uint32_t & | nBlocksLine, | ||
uint32_t & | nBlocksPerRing, | ||
uint32_t & | start_time_ms, | ||
uint32_t & | duration_ms, | ||
int | vb | ||
) |
Definition at line 1305 of file gDataConversionUtilities.cc.
int ReadMacSPECT | ( | string | a_pathMac, |
float_t & | a_distToDetector, | ||
uint32_t & | a_nHeads, | ||
uint32_t & | a_nPixAxl, | ||
uint32_t & | a_nPixTrs, | ||
float_t & | a_crystalSizeAxl, | ||
float_t & | a_crystalSizeTrs, | ||
uint32_t & | a_nProjectionsTot, | ||
uint32_t & | a_nProjectionsByHead, | ||
float_t & | a_head1stAngle, | ||
float_t & | a_headAngPitch, | ||
float_t & | a_headAngStepDeg, | ||
int & | a_headRotDirection, | ||
uint32_t & | a_start_time_ms, | ||
uint32_t & | a_duration_ms, | ||
int | vb | ||
) |
Definition at line 1525 of file gDataConversionUtilities.cc.
vector<string> Split | ( | string | a_line | ) |
Split the line provided in parameter into a vector of strings (separator is blankspace)
a_line | : string to split |
Definition at line 76 of file gDataConversionUtilities.cc.
int WriteVector | ( | ofstream & | file, |
const string & | a_key, | ||
vector< T > | a_vals | ||
) |
Write the key and its values in the file provided in parameter.
file | : the output file |
a_key | : key to write |
a_vals | : vector containing the key values |
Definition at line 130 of file gDataConversionUtilities.cc.
template int WriteVector | ( | ofstream & | file, |
const string & | a_key, | ||
vector< double > | a_vals | ||
) |
int WriteVector | ( | ofstream & | file, |
const string & | a_key, | ||
vector< string > | a_vals | ||
) |
Write the key and its values in the file provided in parameter.
file | : the output file |
a_key | : key to write |
a_vals | : vector containing the key values |
Definition at line 169 of file gDataConversionUtilities.cc.
int WriteVector | ( | ofstream & | file, |
const string & | a_key, | ||
vector< vector< string > > | a_vals | ||
) |
Write the key and its values contained in a 2 level vector of strings in the file provided in parameter.
file | : the output file |
a_key | : key to write |
a_vals | : vector containing the key values |
Definition at line 204 of file gDataConversionUtilities.cc.