Beispiel #1
0
        /// <summary>
        /// Gets the default value of field based on type.
        /// </summary>
        /// <param name="fieldType">data type.</param>
        /// <returns>default value.</returns>
        public static object GetDefaultValue(Field.FieldType fieldType)
        {
            switch (fieldType)
            {
            case Field.FieldType.Double:
                return(new double());

            case Field.FieldType.Single:
                return(new float());

            case Field.FieldType.Integer:
                return(new int());

            case Field.FieldType.SmallInteger:
                return(new short());

            case Field.FieldType.String:
                return(Resources.Strings.EnterValue);

            case Field.FieldType.GUID:
                return(Guid.NewGuid());

            default:
                return(null);
            }
        }
Beispiel #2
0
        /// <summary>
        /// Increments current value of field based on type.
        /// </summary>
        /// <param name="fieldType">data type.</param>
        /// <param name="currentValue">current value to increment from.</param>
        /// <returns>incremented value.</returns>
        public static object IncrementValue(Field.FieldType fieldType, object currentValue)
        {
            switch (fieldType)
            {
            case Field.FieldType.Double:
                return(((double)currentValue) + 1);

            case Field.FieldType.Single:
                return(((float)currentValue) + 1);

            case Field.FieldType.Integer:
                return(((int)currentValue) + 1);

            case Field.FieldType.SmallInteger:
                return(((short)currentValue) + 1);

            case Field.FieldType.String:
            {
                var strNum = ((string)currentValue).Replace(Resources.Strings.EnterValue, string.Empty);
                int count  = 0;
                if (strNum.Trim().Length > 0)
                {
                    int.TryParse(strNum, out count);
                }
                return(string.Format("{0}{1}", Resources.Strings.EnterValue, count + 1));
            }

            case Field.FieldType.GUID:
                return(Guid.NewGuid());

            default:
                return(null);
            }
        }
Beispiel #3
0
    private void FixedUpdate()
    {
        /*if(camera != null)
         * {
         *  camera.Render();
         * }*/
        ChangePositionOverTime();
        currentPosFieldType = worldArea.Area[-((int)position.x - (int)globalPosition.x), -((int)position.z - (int)globalPosition.z)].FType;
        if (requestDecision)
        {
            //Debug.LogError(currentPosFieldType);
            if (!isDrawing && currentPosFieldType == Field.FieldType.path)
            {
                isDrawing = true;
            }
            else if (isDrawing && currentPosFieldType == Field.FieldType.player)
            {
                worldArea.CalculateClosedArea();
                isPathInfected = false;
                isDrawing      = false;
            }
            if (currentPosFieldType == Field.FieldType.player)
            {
                moveTarget = Vector3.zero;
            }
            RequestDecision();
        }

        if (currentPosFieldType == Field.FieldType.player)
        {
            AddReward(-0.005f);
        }

        if (currentPosFieldType == Field.FieldType.path)
        {
            AddReward(0.005f);
        }

        if (currentPosFieldType == Field.FieldType.path && worldArea.Area[-((int)position.x - (int)globalPosition.x), -((int)position.z - (int)globalPosition.z)].IsInfected)
        {
            AddReward(-1f);
            EndEpisode();
        }

        if (Vector3.Distance(position, transform.position) < 0.001f)
        {
            canSwitchDir = true;
        }
        else
        {
            canSwitchDir = false;
        }
    }
        public static Type GetSystemTypeFromFieldType(Field.FieldType fieldType)
        {
            switch (fieldType)
            {
            case ESRI.ArcGIS.Client.Field.FieldType.Integer:
            case ESRI.ArcGIS.Client.Field.FieldType.OID:
                return(typeof(System.Int32?));

            case ESRI.ArcGIS.Client.Field.FieldType.SmallInteger:
                return(typeof(System.Int16?));

            case ESRI.ArcGIS.Client.Field.FieldType.Double:
                return(typeof(System.Double?));

            case ESRI.ArcGIS.Client.Field.FieldType.Single:
                return(typeof(System.Single?));

            case ESRI.ArcGIS.Client.Field.FieldType.String:
            case ESRI.ArcGIS.Client.Field.FieldType.GlobalID:
            case ESRI.ArcGIS.Client.Field.FieldType.GUID:
            case ESRI.ArcGIS.Client.Field.FieldType.XML:
                return(typeof(System.String));

            case ESRI.ArcGIS.Client.Field.FieldType.Date:
                return(typeof(System.DateTime?));

            case ESRI.ArcGIS.Client.Field.FieldType.Geometry:
            case ESRI.ArcGIS.Client.Field.FieldType.Blob:
            case ESRI.ArcGIS.Client.Field.FieldType.Raster:
            case ESRI.ArcGIS.Client.Field.FieldType.Unknown:
                return(typeof(System.Object));

            default:
                return(typeof(System.Object));
            }
        }
        public static Object ConvertGepJsonTokenToObject(JToken fieldToken, Field.FieldType fieldType)
        {
            switch (fieldType)
            {
            case ESRI.ArcGIS.Client.Field.FieldType.Integer:
            case ESRI.ArcGIS.Client.Field.FieldType.OID:
                return(fieldToken.ToObject <Int32?>());

            case ESRI.ArcGIS.Client.Field.FieldType.SmallInteger:
                return(fieldToken.ToObject <Int16?>());

            case ESRI.ArcGIS.Client.Field.FieldType.Double:
                return(fieldToken.ToObject <Double?>());

            case ESRI.ArcGIS.Client.Field.FieldType.Single:
                return(fieldToken.ToObject <Single?>());

            case ESRI.ArcGIS.Client.Field.FieldType.String:
            case ESRI.ArcGIS.Client.Field.FieldType.GlobalID:
            case ESRI.ArcGIS.Client.Field.FieldType.GUID:
            case ESRI.ArcGIS.Client.Field.FieldType.XML:
                return(fieldToken.ToObject <String>());

            case ESRI.ArcGIS.Client.Field.FieldType.Date:
                return(UnixTimeToDateTime((long?)fieldToken));

            case ESRI.ArcGIS.Client.Field.FieldType.Geometry:
            case ESRI.ArcGIS.Client.Field.FieldType.Blob:
            case ESRI.ArcGIS.Client.Field.FieldType.Raster:
            case ESRI.ArcGIS.Client.Field.FieldType.Unknown:
                return(fieldToken.ToObject <Object>());

            default:
                return(fieldToken.ToObject <Object>());
            }
        }
    public String TypeToString(Field.FieldType type)
    {
        String ret_string = "";

        switch (type)
        {
        case Field.FieldType.BOOL_TYPE:
            ret_string = "BOOL";
            break;

        case Field.FieldType.BIN_TYPE:
            ret_string = "BIN";
            break;

        case Field.FieldType.CHAR_TYPE:
            ret_string = "CHAR";
            break;

        case Field.FieldType.I8_TYPE:
            ret_string = "I8";
            break;

        case Field.FieldType.I16_TYPE:
            ret_string = "I16";
            break;

        case Field.FieldType.I32_TYPE:
            ret_string = "I32";
            break;

        case Field.FieldType.I64_TYPE:
            ret_string = "I64";
            break;

        case Field.FieldType.F32_TYPE:
            ret_string = "F32";
            break;

        case Field.FieldType.F64_TYPE:
            ret_string = "F64";
            break;

        case Field.FieldType.STRING_TYPE:
            ret_string = "STRING";
            break;

        case Field.FieldType.U8_TYPE:
            ret_string = "U8";
            break;

        case Field.FieldType.U16_TYPE:
            ret_string = "U16";
            break;

        case Field.FieldType.U32_TYPE:
            ret_string = "U32";
            break;

        case Field.FieldType.U64_TYPE:
            ret_string = "U64";
            break;

        default:
            String oss = "Unsupported Field TYPE: " + type;
            throw new GMSEC_Exception(StatusClass.FIELD_ERROR, StatusCode.UNKNOWN_FIELD_TYPE, oss);
        }

        return(ret_string);
    }
Beispiel #7
0
 public void addField(string tableField, string classField, string formField, Field.FieldType type, Field.FieldDataType dataType)
 {
     fields.AddLast(new Field(tableField, classField, formField, type, dataType));
 }
Beispiel #8
0
        internal static object ConvertToExpectedType(object valueObject, Field.FieldType expectedValueType)
        {
            object result = valueObject;

            switch (expectedValueType)
            {
            case Field.FieldType.Date:
                try
                {
                    if (valueObject is string)
                    {
                        result = Convert.ToDateTime(valueObject, CultureInfo.InvariantCulture);
                    }
                    else if (valueObject is long)
                    {
                        result = new DateTime(Convert.ToInt64(valueObject));
                    }
                    //else
                    //{
                    //    long time = 0;
                    //    if (valueObject.GetType() == typeof(long)) time = (long)valueObject;
                    //    else if (valueObject.GetType() == typeof(int)) time = (int)valueObject;
                    //    else time = Convert.ToInt64(valueObject, CultureInfo.InvariantCulture);
                    //    result = ESRI.ArcGIS.Client.Services.MapService.Epoch.AddMilliseconds((double)time);
                    //}
                }
                catch { }
                break;

            case Field.FieldType.Double:
                if (valueObject.GetType() != typeof(double))
                {
                    try { result = Convert.ToDouble(valueObject, CultureInfo.InvariantCulture); }
                    catch { }
                }
                break;

            case Field.FieldType.Single:
                if (valueObject.GetType() != typeof(float))
                {
                    try { result = Convert.ToSingle(valueObject, CultureInfo.InvariantCulture); }
                    catch { }
                }
                break;

            case Field.FieldType.Integer:
                if (valueObject.GetType() != typeof(int))
                {
                    try { result = Convert.ToInt32(valueObject, CultureInfo.InvariantCulture); }
                    catch { }
                }
                break;

            case Field.FieldType.SmallInteger:
                if (valueObject.GetType() != typeof(short))
                {
                    try { result = Convert.ToInt16(valueObject, CultureInfo.InvariantCulture); }
                    catch { }
                }
                break;
            }
            return(result);
        }
        public static object ConvertValue(object value, Field.FieldType toFieldType)
        {
            object convertedValue = null;

            try
            {
                switch (toFieldType)
                {
                case ESRI.ArcGIS.Client.Field.FieldType.Integer:
                case ESRI.ArcGIS.Client.Field.FieldType.OID:
                    //typeof(System.Int32?);
                    int intValue = Convert.ToInt32(value);
                    convertedValue = new System.Int32?(intValue);
                    break;

                case ESRI.ArcGIS.Client.Field.FieldType.SmallInteger:
                    //typeof(System.Int16?);
                    short shortValue = Convert.ToInt16(value);
                    convertedValue = new System.Int16?(shortValue);
                    break;

                case ESRI.ArcGIS.Client.Field.FieldType.Double:
                    //typeof(System.Double?);
                    double doubleValue = Convert.ToDouble(value);
                    convertedValue = new System.Double?(doubleValue);
                    break;

                case ESRI.ArcGIS.Client.Field.FieldType.Single:
                    //typeof(System.Single?);
                    float floatValue = Convert.ToSingle(value);
                    convertedValue = new System.Single?(floatValue);
                    break;

                case ESRI.ArcGIS.Client.Field.FieldType.String:
                case ESRI.ArcGIS.Client.Field.FieldType.GlobalID:
                case ESRI.ArcGIS.Client.Field.FieldType.GUID:
                case ESRI.ArcGIS.Client.Field.FieldType.XML:
                    //typeof(System.String);
                    string stringValue = Convert.ToString(value);
                    convertedValue = stringValue;
                    break;

                case ESRI.ArcGIS.Client.Field.FieldType.Date:
                    //typeof(System.DateTime?);
                    DateTime dateTimeValue = Convert.ToDateTime(value);
                    convertedValue = new System.DateTime?(dateTimeValue);
                    break;

                case ESRI.ArcGIS.Client.Field.FieldType.Geometry:
                case ESRI.ArcGIS.Client.Field.FieldType.Blob:
                case ESRI.ArcGIS.Client.Field.FieldType.Raster:
                case ESRI.ArcGIS.Client.Field.FieldType.Unknown:
                    //typeof(System.Object);
                    convertedValue = value;
                    break;

                default:
                    //typeof(System.Object);
                    convertedValue = value;
                    break;
                }
            }
            catch (Exception)
            {
                convertedValue = null;
            }

            return(convertedValue);
        }