Esempio n. 1
0
/*:::::*/
FBCALL int fb_InputByte( char *dst )
{
    char buffer[FB_INPUT_MAXNUMERICLEN+1];
    int len, isfp;

	len = fb_FileInputNextToken( buffer, FB_INPUT_MAXNUMERICLEN, FB_FALSE, &isfp );

	if( isfp == FALSE )
		*dst = (char)fb_hStr2Int( buffer, len );
	else
		*dst = (char)rint( fb_hStr2Double( buffer, len ) );

	return fb_ErrorSetNum( FB_RTERROR_OK );
}
Esempio n. 2
0
FBCALL void fb_DataReadSingle( float *dst )
{
    FB_LOCK();

    if( __fb_data_ptr ) {
        if( __fb_data_ptr->len == FB_DATATYPE_OFS ) {
            *dst = (size_t)__fb_data_ptr->ofs;
        } else if( __fb_data_ptr->len & FB_DATATYPE_WSTR ) {
            *dst = fb_WstrToDouble( __fb_data_ptr->wstr, __fb_data_ptr->len & 0x7FFF );
        } else {
            *dst = fb_hStr2Double( __fb_data_ptr->zstr, __fb_data_ptr->len );
        }
    } else {
        /* no more DATA */
        *dst = 0.0;
    }

    fb_DataNext( );

    FB_UNLOCK();
}
Esempio n. 3
0
/*:::::*/
FBCALL void fb_DataReadSingle( float *dst )
{
	short len;

	FB_LOCK();

	len = fb_DataGetLen();

	if( len == 0 )
		*dst = 0.0;
	else if( len == FB_DATATYPE_OFS )
		*dst = (float)(unsigned long)__fb_data_ptr->ofs;
	/* wstring? */
	else if( len & FB_DATATYPE_WSTR )
        *dst = (float)fb_WstrToDouble( __fb_data_ptr->wstr, len & 0x7FFF );
	else
        *dst = (float)fb_hStr2Double( __fb_data_ptr->zstr, len );

	if( __fb_data_ptr != NULL )
		++__fb_data_ptr;

	FB_UNLOCK();
}