예제 #1
0
        private ElementModel GetElement(IValueModel model)
        {
            ElementModel elementmodel = new ElementModel();

            elementmodel.AddrType  = model.Base;
            elementmodel.StartAddr = model.Index;
            elementmodel.DataType  = GetDataType(model.Type);
            if (model.Offset != WordValue.Null)
            {
                elementmodel.IsIntrasegment   = true;
                elementmodel.IntrasegmentType = model.Offset.Base;
                elementmodel.IntrasegmentAddr = model.Offset.Index;
            }
            else
            {
                elementmodel.IsIntrasegment = false;
            }
            elementmodel.SetShowTypes();
            return(elementmodel);
        }
예제 #2
0
 private void Initialize(LadderNetworkViewModel lnvmodel)
 {
     foreach (BaseViewModel bvmodel in lnvmodel.GetElements())
     {
         bvmodel.ViewCtrl = this;
         BaseModel bmodel = bvmodel.Model;
         if (bmodel == null)
         {
             continue;
         }
         for (int i = 0; i < bmodel.ParaCount; i++)
         {
             IValueModel ivmodel = bmodel.GetPara(i);
             if (AssertValueModel(ivmodel))
             {
                 ElementModel elementmodel = new ElementModel();
                 elementmodel.AddrType  = ivmodel.Base;
                 elementmodel.StartAddr = ivmodel.Index;
                 elementmodel.DataType  = GetDataType(ivmodel.Type);
                 if (ivmodel.Offset != WordValue.Null)
                 {
                     elementmodel.IsIntrasegment   = true;
                     elementmodel.IntrasegmentType = ivmodel.Offset.Base;
                     elementmodel.IntrasegmentAddr = ivmodel.Offset.Index;
                 }
                 else
                 {
                     elementmodel.IsIntrasegment = false;
                 }
                 elementmodel.SetShowTypes();
                 _Add(elementmodel, false);
                 elementmodel = Get(elementmodel);
                 bvmodel.SetValueModel(i, elementmodel);
             }
         }
     }
 }