When sliceOmatic read an image file, it create a "SliceO_File" class and place it in the "Database_File_Pt" list. This list of files is used by sliceOmatic when it reconstruct its database tree.
The list can be accessed through the "Fct_Variable" function:
int Database_File_Nb ;
SliceO_File **Database_File_Pt = (SliceO_File **) Fct_Variable_Value( "$DB_FILE_PT", &Database_File_Nb ) ;
Or, you can use the "Tool_DB_File" tool to select the files you want to access. You can also use the Fct_File_Open and Fct_File_Close functions to add or remove files from the list. These functions will keep the Database_File_Pt list up-to-date.
SliceO_File Class
The SliceO_File class contain:
Constructors
The constructor and destructor for the class
Public:
|
SliceO_File
|
Class constructor.
|
~SliceO_File
|
Class destructor.
|
Note:
|
The Constructor and destructor are given for the sake of completion. You should not have to use them. SliceOmatic already has a module to read in files and to close them. If you want to read a file, use the "Fct_File_Open", and to close a file, use the "Fct_File_Delete" of the SliceO_5 library.
|
|
Identification
Some "Public" variables used for the file names and status of the file:
Public:
|
m_name_GLI (char *)
|
The complete path of the file.
|
m_name_TAG_save (char **)
|
An array of the complete path to all the saved TAG files. The number of paths is defined by the variable "m_bunch_nb".
|
m_name_TAG_read (char **)
|
An array of the complete path to all the read TAG files.
|
m_flag (char)
|
A flag indicating that the TAG data has been modified and need to be saved.
|
m_date (time_t)
|
The date the file has been read in sliceO.
|
Some methods to define the class instance. Some of these are derived from the parent (SliceO) class:
Private:
|
m_class_a (unsigned short)
|
The exact meaning of the content of "A" depend on the class:
|
Public:
|
Class_A_Get
|
Return the value of the "m_class_a" variable.
|
Class_A_Set
|
Set the value of the "m_class_a" variable.
|
Private:
|
m_class_b (unsigned short)
|
The exact meaning of content of "B" depend on the class:
SliceO_File
|
A status flag (FILE_OPEN, FILE_BAD_DIM,...)
|
|
Public:
|
Class_B_Get
|
Return the value of the "m_class_b" variable.
|
Class_B_Set
|
Set the value of the "m_class_b" variable.
|
Private:
|
m_name (char *)
|
Name of the class instance
|
Public:
|
Name_Get
|
Return the name of the class instance
|
Name_Set
|
Assign a name to the class instance
|
And some are specific to the SliceO_File class:
Public:
|
Match
|
A method used to compare this file to another. It returns 0 if this instance's name is the same as the name provided as argument, >0 or <0 if different.
|
Data
And some variables containing the actual file data.
Note:
|
A medical image file can contain more than one image. If it does and these are all the same resolution, orientation and are uniformly distribute either in time (an animation) or in space (a 3D dataset), the program still consider the file to have 1 dataset or "bunch". If, however, the included images have different parameters, then we will place these in different "bunches". (The term "bunch" might not be the ideal term, but "Series" and "groups" have different connotation in sliceOmatic.)
|
|
Public:
|
m_bunch_nb (int)
|
The number of "bunch" of images in the file.
|
m_bunch_flag (unsigned char *)
|
An array of flags. one for each bunch. These flag express whether the bunch are OPEN, CLOSE....
|
m_bunch_offset (float *)
|
An array of optional offset override in the direction orthogonal to the slice plane. These are set in the "Pos." page of the DB File Management" mode.
|
m_bunch_dim (float *)
|
An array of optional pixel dimensions override (x and y must be equal). These are set in the "Dim." page of the DB File Management" mode.
|
m_bunch_head (void **)
|
An array of pointers to structures containing the slice's headers and data. The structures are of type "Tomo_Image".
|