예제 #1
0
 public bool ReadSio(Stream instream)
 {
     Sio.SDataBuff d = new Sio.SDataBuff();
     if (d.UnSerializ(instream))
     {
         Sio.SListReader l = d.listReader;
         if (l != null)
         {
             Sio.SDataBuff b = new Sio.SDataBuff();
             while (l.Next(b))
             {
                 Sio.SMapReader mr = b.mapReader;
                 if (mr != null)
                 {
                     NStruct n = new NStruct();
                     if (n.Unsrial(mr))
                     {
                         Add(n);
                     }
                 }
             }
             return(true);
         }
     }
     return(false);
 }
예제 #2
0
        public virtual bool Feild(uint k, Sio.SDataBuff d)
        {
            ParamContainerKey t = (ParamContainerKey)k;

            switch (t)
            {
            case ParamContainerKey.ParamKeyList:
            {
                Sio.SListReader plist = new Sio.SListReader();
                if (plist != null)
                {
                    Sio.SDataBuff o = new Sio.SDataBuff();
                    while (plist.Next(o))
                    {
                        Sio.SMapReader r = o.mapReader;
                        NParam         p = new NParam();
                        if (r != null && p.Unserial(r))
                        {
                            paramList.Add(p);
                        }
                    }
                }
            }
            break;

            default:
                return(false);
            }
            return(true);
        }
예제 #3
0
 private bool ReadSio(Stream s)
 {
     Sio.SDataBuff d = new Sio.SDataBuff();
     if (d.UnSerializ(s))
     {
         Sio.SListReader lr = d.listReader;
         if (lr != null)
         {
             Sio.SDataBuff b = new Sio.SDataBuff();
             while (lr.Next(b))
             {
                 Sio.SMapReader mr = b.mapReader;
                 if (mr != null)
                 {
                     NModule tm = new NModule();
                     if (tm.Unserial(mr))
                     {
                         Add(tm);
                     }
                 }
             }
             return(true);
         }
     }
     return(false);
 }
예제 #4
0
        bool Feild(uint k, Sio.SDataBuff d)
        {
            moduleKey t = (moduleKey)k;

            switch (t)
            {
            case moduleKey.module_name_key:
                name = d.stringValue;
                break;

            case moduleKey.module_startid:
                startID = d.uintValue;
                break;

            case moduleKey.module_endid:
                endID = d.uintValue;
                break;

            case moduleKey.module_function_list:
            {
                Sio.SListReader plist = d.listReader;
                Sio.SDataBuff   tn    = new Sio.SDataBuff();
                while (plist.Next(tn))
                {
                    Sio.SMapReader pr = tn.mapReader;
                    if (pr != null)
                    {
                        NFunction pf = new NFunction();
                        if (pf.Unsrial(pr))
                        {
                            Add(pf);
                        }
                    }
                }
            }
            break;

            default:
                return(false);
            }
            return(true);
        }