Пример #1
0
/*--------------------------------------------------------------------------*/
void C2F(getfileinfo)(int *fd, FILE *fa, int *swap2, int *type, int *mode, char *filename, int *lf, int *ierr)
{
	char *filenamefromfd = NULL;
	if (*fd<0 || *fd>=GetMaximumFileOpenedInScilab() ) 
	{
		*ierr=1;
		return;
	}
	if ( GetFileTypeOpenedInScilab(*fd) == 0 ) 
	{
		*ierr=2;
		return;
	}
	fa = GetFileOpenedInScilab(*fd);

	*swap2 = GetSwapStatus(*fd);
	*type = GetFileTypeOpenedInScilab(*fd);
	*mode = GetFileModeOpenedInScilab(*fd);
	filenamefromfd = GetFileNameOpenedInScilab(*fd);
	if (filenamefromfd) strcpy(filename,GetFileNameOpenedInScilab(*fd));
	else strcpy(filename,"");

	*lf=(int)strlen(filename);
	*ierr=0;
}
Пример #2
0
/*--------------------------------------------------------------------------*/
double *GetModesUsed(int *sizeArrayReturned)
{
    double *ArrayModeUsed = NULL;
    int i = 0, j = 0;

    *sizeArrayReturned = GetNumberOfIdsUsed();

    ArrayModeUsed = (double*)MALLOC(sizeof(double)*(*sizeArrayReturned));
    if (ArrayModeUsed == NULL)
    {
        *sizeArrayReturned = 0;
        return NULL;
    }

    j = 0;
    for (i = 0; i < GetMaximumFileOpenedInScilab(); i++)
    {
        if (GetFileTypeOpenedInScilab(i) != 0)
        {
            ArrayModeUsed[j] = (double)GetFileModeOpenedInScilab(i);
            j++;
        }
    }
    return ArrayModeUsed;
}
Пример #3
0
/*--------------------------------------------------------------------------*/
mputlError mputl(int fileDescriptor, char **pStrings, int sizeStrings)
{
    FILE *fw = NULL;
    int i = 0;

    if (pStrings == NULL)
    {
        return MPUTL_ERROR;
    }

    if (fileDescriptor == STDIN_ID)
    {
        return MPUTL_INVALID_FILE_DESCRIPTOR;
    }
    else if (fileDescriptor == STDOUT_ID)
    {
        fw = stdout;
    }
    else
    {
        fw = GetFileOpenedInScilab(fileDescriptor);
        if (fw)
        {
            int mode = GetFileModeOpenedInScilab(fileDescriptor);

            if ( (mode >= 100) && (mode < 200) )
            {
                return MPUTL_NO_WRITE_RIGHT;
            }
        }
        else
        {
            return MPUTL_INVALID_FILE_DESCRIPTOR;
        }
    }

    for (i = 0; i < sizeStrings; i++)
    {
        if (fw == stdout)
        {
            sciprint(MPUTL_FORMAT, pStrings[i]);
        }
        else
        {
            fprintf(fw, MPUTL_FORMAT, pStrings[i]);
        }
    }

    return MPUTL_NO_ERROR;
}