/// <summary> /// Instantiates an abstract IML base data into a specific one /// </summary> /// <param name="dataToInstantiate"></param> /// <param name="dataToReadFrom"></param> /// <param name="IMLType"></param> public static void InstantiateIMLData(ref IMLBaseDataType dataToInstantiate, IMLSpecifications.DataTypes IMLType) { switch (IMLType) { case IMLSpecifications.DataTypes.Float: dataToInstantiate = new IMLFloat(); break; case IMLSpecifications.DataTypes.Integer: dataToInstantiate = new IMLInteger(); break; case IMLSpecifications.DataTypes.Vector2: dataToInstantiate = new IMLVector2(); break; case IMLSpecifications.DataTypes.Vector3: dataToInstantiate = new IMLVector3(); break; case IMLSpecifications.DataTypes.Vector4: dataToInstantiate = new IMLVector4(); break; case IMLSpecifications.DataTypes.SerialVector: dataToInstantiate = new IMLSerialVector(); break; default: break; } }
/// <summary> /// Instantiates an abstract IML base data into a specific one /// </summary> /// <param name="dataToInstantiate"></param> /// <param name="dataToReadFrom"></param> /// <param name="IMLType"></param> public static void InstantiateIMLData(ref IMLBaseDataType dataToInstantiate, IMLBaseDataType dataToReadFrom) { if (dataToReadFrom == null) { Debug.LogError("Can't instantiate a null IML data type!"); return; } switch (dataToReadFrom.DataType) { case IMLSpecifications.DataTypes.Float: dataToInstantiate = new IMLFloat(dataToReadFrom); break; case IMLSpecifications.DataTypes.Integer: dataToInstantiate = new IMLInteger(dataToReadFrom); break; case IMLSpecifications.DataTypes.Vector2: dataToInstantiate = new IMLVector2(dataToReadFrom); break; case IMLSpecifications.DataTypes.Vector3: dataToInstantiate = new IMLVector3(dataToReadFrom); break; case IMLSpecifications.DataTypes.Vector4: dataToInstantiate = new IMLVector4(dataToReadFrom); break; case IMLSpecifications.DataTypes.SerialVector: dataToInstantiate = new IMLSerialVector(dataToReadFrom); break; default: break; } }