Exemplo n.º 1
0
Arquivo: LDA.cpp Projeto: YPench/EN
int CLDA::LDA_estimate_Port()
{
	//src/lda -est -alpha 0.5 -beta 0.1 -ntopics 100 -niters 1000 -savestep 100 -twords 20 -dfile models/casestudy/trndocs.dat

	char str[25];
	char* argvector[MAX_PARAMETERS];
	if(m_p_CDOC->m_DebugDoc_Flag){
		m_p_CDOC->m_niters = 10;
	}
	vector<string> parameter_v;
	parameter_v.push_back("-est");
	parameter_v.push_back("-alpha");
	_gcvt_s(str, 25, m_p_CDOC->m_alpha, 10);
	parameter_v.push_back(str);
	parameter_v.push_back("-beta");
	_gcvt_s(str, 25, m_p_CDOC->m_beta, 10);
	parameter_v.push_back(str);
	parameter_v.push_back("-ntopics");
	_itoa_s(m_p_CDOC->m_Events, str, 25, 10);
	parameter_v.push_back(str);
	parameter_v.push_back("-niters");
	_itoa_s(m_p_CDOC->m_niters, str, 25, 10);
	parameter_v.push_back(str);
	parameter_v.push_back("-savestep");
	_itoa_s(m_p_CDOC->m_niters+5, str, 25, 10);
	parameter_v.push_back(str);
	parameter_v.push_back("-twords");
	_itoa_s(m_p_CDOC->m_twords, str, 25, 10);
	parameter_v.push_back(str);
	parameter_v.push_back("-dfile");
	parameter_v.push_back("Matrix.DAT");

	for(size_t i = 0; i < MAX_PARAMETERS; i++){
		argvector[i] = new char[256];
	}
	for(size_t i = 0; i < parameter_v.size(); i++){
		strcpy_s(argvector[i], 256, parameter_v[i].c_str());
	}
	
	LDA_main_Port(parameter_v.size(), argvector);

	for(size_t i = 0; i < MAX_PARAMETERS; i++){
		delete argvector[i];
	}
	return 0;
}
Exemplo n.º 2
0
	AString ftoa(double number)
	{
		char buffer[320];
		_gcvt_s(buffer, 320, number, 30);
		vint len = (vint)strlen(buffer);
		if (buffer[len - 1] == '.')
		{
			buffer[len - 1] = '\0';
		}
		return buffer;
	}
Exemplo n.º 3
0
void DecreaseFOV() {
    SatDown(&ScreenFOV,5,1);
    if ((MGEFlags & DISPLAY_MESSAGES) && RealDevice != NULL) {
        char str[11];
        char str2[27]; str2[0]='\0';
        strcat(str2,"Field of view: ");
        _gcvt_s(str,10,ScreenFOV,8);
        strcat_s(str2,26,str);
        SETSTATUS(str2);
    }
}
Exemplo n.º 4
0
char * __cdecl _gcvt (
        double value,
        int ndec,
        char *buf
        )
{
        errno_t e = _gcvt_s(buf, (size_t)-1, value, ndec);
        if (e != 0)
        {
                return NULL;
        }
        return buf;
}
Exemplo n.º 5
0
string osl_FloatToStr(float n)
{
	char buffer[OSL_CONVERT_BUFFER_SIZE];

	try
	{
		if(_gcvt_s(buffer, OSL_CONVERT_BUFFER_SIZE, (float)n, OSL_CONVERT_DIGITS) != 0)
			throw("_gcvt_s() FAILED");
	}
	catch(char* str)
	{
		WriteToLog(DEFAULT_OSL_LOG_NAME, "osl_FloatToStr() EXCEPTION: " + string(str));
		return "";
	}

	return string(buffer);
}
Exemplo n.º 6
0
void cString::VarToString(const double var)
{
	char str[33];

	memset (&str,0,33);
	_gcvt_s(str, sizeof(str) - 1,var, 16);
	m_nLength = strlen(str);
	if (str[m_nLength - 1] == '.')
	{
		str[m_nLength - 1] = '\0';
		m_nLength --;
	}
	m_nLength = strlen(str);
	m_pString = (char*)malloc(m_nLength + 1);
	memset(m_pString,0,m_nLength+1);
	memcpy(m_pString, str,m_nLength);
}
Exemplo n.º 7
0
void DecreaseView() {
	DECLARE_MWBRIDGE
    float f = mwBridge->GetViewDistance();
    SatDown(&f,MINVIEWDISTANCE,50);
	mwBridge->SetViewDistance(f);

    if (MGEFlags & BIND_AI_TO_VIEW) {
        float f2=f/STDMAXVIEWDISTANCE;
		mwBridge->SetAIDistance(f2);
    }
    if ((MGEFlags & DISPLAY_MESSAGES) && RealDevice != NULL) {
        char str[11];
        char str2[27]; str2[0]='\0';
        strcat(str2,"View distance: ");
        _gcvt_s(str,10,f,8);
        strcat_s(str2,26,str);
        SETSTATUS(str2);
    }
}
Exemplo n.º 8
0
wstring DblToStr(float fltVal)
{
    char buff[50];
    _gcvt_s(buff,sizeof(buff),fltVal, 10);
    return str2wstr(string(buff));
}
Exemplo n.º 9
0
wstring DblToStr(double dblVal, int ndigits)
{
    char buff[50];
    _gcvt_s(buff,sizeof(buff),dblVal, ndigits);
    return str2wstr(string(buff));
}
Exemplo n.º 10
0
		Air::AString Converter::ToString( double val ){
			AChar	str[16];
			_gcvt_s(str,16,val,10);
			return	str;
		}
Exemplo n.º 11
0
/* {{{ ps_fetch_float */
static void
ps_fetch_float(zval * zv, const MYSQLND_FIELD * const field, unsigned int pack_len, zend_uchar ** row)
{
	float fval;
	double dval;
	DBG_ENTER("ps_fetch_float");
	float4get(fval, *row);
	(*row)+= 4;
	DBG_INF_FMT("value=%f", fval);

	/*
	 * The following is needed to correctly support 4-byte floats.
	 * Otherwise, a value of 9.99 in a FLOAT column comes out of mysqli
	 * as 9.9998998641968.
	 *
	 * For GCC, we use the built-in decimal support to "up-convert" a
	 * 4-byte float to a 8-byte double.
	 * When that is not available, we fall back to converting the float
	 * to a string and then converting the string to a double. This mimics
	 * what MySQL does.
	 */
#ifdef HAVE_DECIMAL_FP_SUPPORT
	{
		typedef float dec32 __attribute__((mode(SD)));
		dec32 d32val = fval;

		/* The following cast is guaranteed to do the right thing */
		dval = (double) d32val;
	}
#elif defined(PHP_WIN32)
	{
		/* float datatype on Winows is already 4 byte but has a precision of 7 digits */
		char num_buf[2048];
		(void)_gcvt_s(num_buf, 2048, fval, field->decimals >= 31 ? 7 : field->decimals);
		dval = zend_strtod(num_buf, NULL);
	}
#else
	{
		char num_buf[2048]; /* Over allocated */
		char *s;

#ifndef FLT_DIG
# define FLT_DIG 6
#endif
		/* Convert to string. Ignoring localization, etc.
		 * Following MySQL's rules. If precision is undefined (NOT_FIXED_DEC i.e. 31)
		 * or larger than 31, the value is limited to 6 (FLT_DIG).
		 */
		s = php_gcvt(fval,
			     field->decimals >= 31 ? FLT_DIG : field->decimals,
			     '.',
			     'e',
			     num_buf);

		/* And now convert back to double */
		dval = zend_strtod(s, NULL);
	}
#endif

	ZVAL_DOUBLE(zv, dval);
	DBG_VOID_RETURN;
}