LoadILabFile

Declaration: LoadILabFile(FName: string; CheckDataIntegrity, FeedBack: boolean): integer;
Opens and loads the data file (file extension .ilab) specified by FName. The parameter FName has to contain the full path specification of the Epina ImageLab file to be loaded. The parameter CheckDataIntegrity controls whether the loaded data and the meta files are checked for correctness. Please note that the check for correctness consumes considerable processing time (more than the actual loading of the data).

If the parameter FeedBack is TRUE a visual feedback of the loading progress is provided. Please note that unless the script progress bar is already visible you have to make it visible before calling LoadILabFile, otherwise the feedback will not be displayed. You can activate the script progress bar by calling the function ScriptBar(0).

The function returns the following error codes:

 0 ... everything is OK
-1 ... the meta file contains a wrong or undefined content type
-2 ... the metadata contains an invalid property id
-3 ... invalid date time format in the metadata
-4 ... the file specified by FName is missing
-5 ... the metadata and the data cube do not match
-6 ... the corresponding data file (.cube) is missing
-7 ... the CRC checksum is missing
-8 ... not enough memory, cannot load raw data(1)
Please note that the data is not loaded if any error occurs except for error -7 (missing CRC). In this case the data is completely loaded (error -7 may occur with older .ilab files which do not contain the CRC checksum).



(1) The error code -8 occurs only in 32 bit operating systems, because 64 bit OSes start paging the virtual memory to the harddisk if the memory request exceeds the available free physical memory. While this prevents a crash of the program, it does not really solve the problem of low memory since paging is several orders of magnitude slower than RAM access - which basically means that the computer slows down to an unacceptable speed. Thus speaking in practical terms the system Epina ImageLab is running on should provide enough memory (at least twice the size of the biggest data file to be loaded).