Beispiel #1
0
                }// 248

                public static AdvDupeObject GetTableRef(Byte [] b, ref Int32 index, Dupe dupe)
                {
                    Int16 Id = BitConverter.ToInt16(b, index);

                    index += sizeof(Int16);

                    return(new AdvDupeObject(new AdvDupeRefrence(dupe.RefrancedObjects [Id])));
                } // 247
Beispiel #2
0
                public static void DeSerilize(FileStream FSTM, Dupe dupe)
                {
                    Byte []       RawData = DeCompress(FSTM);
                    Int32         Index   = 0;
                    AdvDupeObject Obj     = Read(RawData, ref Index, dupe);

                    if (Obj.Type != AdvDupeObjectType.Table)
                    {
                        throw new DataMalFormedException("Dupe.AdvancedDupeRevisions.Revision5.DeSerilize(FileStream,Dupe)");
                    }
                    dupe.DupeData = Obj.TypeTable;
                }
Beispiel #3
0
                public static void DeSerilize(FileStream FSTM, Dupe dupe)
                {
                    string RawData = Encoding.Default.GetString(DeCompress(FSTM));
                    Int32  Index   = 0;

                    RawData = RawData.Replace("\r\r\n\t\r\n", "\t\t\t\t");
                    RawData = RawData.Replace("\r\n\t\n", "\t\t\t\t");
                    RawData = RawData.Replace("\r\n", "\n");
                    RawData = RawData.Replace("\t\t\t\t", "\r\n\t\n");
                    AdvDupeObject Obj = Revision4.Read(Encoding.Default.GetBytes(RawData), ref Index, dupe);

                    if (Obj.Type != AdvDupeObjectType.Table)
                    {
                        throw new DataMalFormedException("Dupe.AdvancedDupeRevisions.Revision3.DeSerilize(FileStream,Dupe)");
                    }
                    dupe.DupeData = Obj.TypeTable;
                }
Beispiel #4
0
                public static AdvDupeObject getTable(Byte [] b, ref Int32 index, Dupe dupe)
                {
                    AdvDupeObject t   = new AdvDupeObject(new Table());
                    Object        Key = null;

                    do
                    {
                        Key = Read(b, ref index, dupe);
                        if (Key != null)
                        {
                            t.TypeTable.Add(Key.ToString(), Read(b, ref index, dupe));
                        }
                    } while (Key != null);
                    Int32 Size = dupe.RefrancedObjects.Length;

                    Array.Resize(ref dupe.RefrancedObjects, Size + 1);
                    dupe.RefrancedObjects [Size] = t;
                    return(new AdvDupeObject(new AdvDupeRefrence(dupe.RefrancedObjects [Size])));
                }//255
Beispiel #5
0
                public static AdvDupeObject Read(Byte [] b, ref Int32 index, Dupe dupe)
                {
                    index++;
                    switch (b [index - 1])
                    {
                    case 0:
                        return(new AdvDupeObject(""));

                    case 255:
                        return(getTable(b, ref index, dupe));

                    case 254:
                        return(getArray(b, ref index, dupe));

                    case 253:
                        return(getBooleanT(b, ref index));

                    case 252:
                        return(getBooleanF(b, ref index));

                    case 251:
                        return(getDouble(b, ref index));

                    case 250:
                        return(getVector(b, ref index));

                    case 249:
                        return(GetAngle(b, ref index));

                    case 248:
                        return(GetString(b, ref index));

                    case 247:
                        return(GetTableRef(b, ref index, dupe));

                    case 246:
                        return(GetNull(b, ref index));

                    default:
                        return(GetUndef(b, ref index));
                    }
                }
Beispiel #6
0
                }//255

                public static AdvDupeObject getArray(Byte [] b, ref Int32 index, Dupe dupe)
                {
                    AdvDupeObject a   = new AdvDupeObject(new AdvDupeObject [0]);
                    AdvDupeObject Var = null;

                    do
                    {
                        Var = Read(b, ref index, dupe);
                        if (Var != null)
                        {
                            Int32 size = a.TypeArray.Length;
                            Array.Resize(ref a.RefTypeArray, size + 1);
                            a.TypeArray [size] = Var;
                        }
                    } while (Var == null);
                    Int32 Size = dupe.RefrancedObjects.Length;

                    Array.Resize(ref dupe.RefrancedObjects, Size + 1);
                    dupe.RefrancedObjects [Size] = a;
                    return(new AdvDupeObject(new AdvDupeRefrence(dupe.RefrancedObjects [Size])));
                }// 254