1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
short ReadFicLUT (char *NmFicLUT, long *xLUTi, long *yLUTi, short *lLUTi)
{
int valRet;
int descFichierLUT;
int TailleFichier;
long *pxLUT, *pyLUT;
char str1[MAXSIZELINE], str2[MAXSIZELINE];
char FileNm[30];
int i, j;
// ---------------------------------------------------------
// Initialisation des pointeurs
// ---------------------------------------------------------
pxLUT = xLUTi;
pyLUT = yLUTi;
// ---------------------------------------------------------
// Ouverture du fichier LUT
// ---------------------------------------------------------
sprintf(&FileNm[0], DVCAMIR_NFS_LUT_DIR);
strcat(FileNm, NmFicLUT);
descFichierLUT = open (FileNm, O_RDONLY);
if (descFichierLUT == -1)
{
printf("\n -> fichier LUT '%s' inexistant", FileNm);
return (-1);
}
// Calcul la taille du fichier.
lseek (descFichierLUT, 0, SEEK_SET);
TailleFichier = lseek (descFichierLUT, 0, SEEK_END);
lseek (descFichierLUT, 0, SEEK_SET);
if (TailleFichier > MAXDATAINFILE || TailleFichier <= 0 )
{
printf("\n -> Taille fichier LUT '%s' incorrecte: '%i' octets!",
FileNm, TailleFichier );
close (descFichierLUT);
return (-1); // Problème de taille du fichier LUT.
}
// Charge en mémoire système le fichier LUT.
if ( read (descFichierLUT, FileLUTStockMem, (size_t)(TailleFichier-1)) == -1 )
{
printf("\n -> Lecture fichier LUT '%s' impossible!", FileNm);
close (descFichierLUT);
return (-1); // Problème de taille du fichier LUT.
}
close (descFichierLUT);
|
Partager