int Property::getAsIntOrDefaultVal(int defaultVal) const { if (getAsString().length() > 0) { return getAsInt(); } return defaultVal; }
//---------------------------------------------------------------------- float FixedPoint::getAsFloat() const { float dataAsFloat = (float)getAsInt(); float currentDecimalPlaceVal = MathFuncs<float>::getSign( dataAsFloat )*0.5f; for( int currentBit = 15; currentBit >= 0; --currentBit ) { if( ( 1 & ( m_data >> currentBit ) ) == 1 ) dataAsFloat += currentDecimalPlaceVal; currentDecimalPlaceVal *= 0.5f; } return dataAsFloat; }
int AbstractQoreNode::integerEval(ExceptionSink* xsink) const { if (needs_eval_flag) return integerEvalImpl(xsink); return getAsInt(); }
MC2String& UserEnums::URType::phpPrint( MC2String& tmp ) const { tmp.clear(); return STLStringUtility::int2str( getAsInt(), tmp ); }
//---------------------------------------------------------------------- FixedPoint::operator unsigned int() const { return ( unsigned int ) getAsInt(); }
//---------------------------------------------------------------------- FixedPoint::operator int() const { return getAsInt(); }
//------------------------------------------------------------- void Value::fromBlob ( ValueType type, const Byte *blob ) { int i; // Set type setType( type ); if (blob==NULL) return; switch( type_m ) { case VT_Int: getAsInt() = *(int *) blob; break; case VT_IntList: { int len = *(int *) blob; int *data = ((int *) blob) + 1; IntList &ilist = getAsIntList(); ilist.resize( len ); for(i = 0; i < len; ++i) ilist[ i ] = *data++; break; } case VT_Double: getAsDouble() = *(double *) blob; break; case VT_Date: getAsDate() = *(double *) blob; break; case VT_DoubleList: { int len = *(int *) blob; double *data = (double *) (((int *) blob) + 1); DoubleList &dlist = getAsDoubleList(); dlist.resize( len ); for(i = 0; i < len; ++i) dlist[ i ] = *data++; break; } case VT_DateList: { int len = *(int *) blob; double *data = (double *) (((int *) blob) + 1); DoubleList &dlist = getAsDateList(); dlist.resize( len ); for(i = 0; i < len; ++i) dlist[ i ] = *data++; break; } case VT_String: getAsString() = (Byte *) blob; break; case VT_StringList: { int len = *(int *) blob; Byte *data = (Byte *) (((int *) blob) + 1); StringList &slist = getAsStringList(); slist.resize( len ); for(i = 0; i < len; ++i) { slist[ i ] = data; data += strlen( data ) + 1; } break; } case VT_Uid: getAsUid().fromMemory( (Byte *) blob ); break; case VT_UidList: { int len = *(int *) blob; Byte *data = (Byte *) (((int *) blob) + 1); UidList &slist = getAsUidList(); slist.resize( len ); for(i = 0; i < len; ++i) { slist[ i ].fromMemory( data ); data += Signature::length_scm; } break; } case VT_Reference: getAsReference().fromString( (Byte *) blob ); break; case VT_ReferenceList: { int len = *(int *) blob; Byte *data = (Byte *) (((int *) blob) + 1); ReferenceList &reflist = getAsReferenceList(); reflist.resize( len ); for(i = 0; i < len; ++i) { reflist[ i ].fromString( data ); data += strlen( data ) + 1; } break; } case VT_StringMap: { int len = *(int *) blob; Byte *data = (Byte *) (((int *) blob) + 1); Byte *kdata; StringMap &smap = getAsStringMap(); smap.clear(); for(i = 0; i < len; ++i) { kdata = data; data += strlen( data ) + 1; smap[kdata] = data; data += strlen( data ) + 1; } break; } } }