IBCSystem_OBJProxy.cs 1.43 KB
using FLY.IntegratedControl.Common;
using FLY.IntegratedControl.OBJ_INTERFACE;
using FLY.OBJComponents.Server.OBJProxy;
using FObjBase;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace FLY.IntegratedControl.Server.OBJProxy
{
    class ICSystem_OBJProxy : FObj
    {
        ICSystem data;
        SyncProp_OBJProxy syncProp_OBJProxy;

        PLCProxySystem_OBJProxy plcOS_OBJProxy;

        Buffer_OBJProxy<FlyData_IBCCtrl> mCtrlListOBJProxy;

        public ICSystem_OBJProxy(int objsys_idx, ICSystem data) : base(objsys_idx)
        {
            ID = OBJ_INTERFACE.OBJ_INTERFACE.IBC_OBJ_ID;
            this.data = data;

            syncProp_OBJProxy = new SyncProp_OBJProxy(
                objsys_idx, ID + 1,
                new Dictionary<string, INotifyPropertyChanged>
                {
                    { "Item", data.Item },
                    { "CtrlListData", data.CtrlListData}
                });


            plcOS_OBJProxy = new PLCProxySystem_OBJProxy(
                objsys_idx,
                OBJ_INTERFACE.OBJ_INTERFACE.IBC_OBJ_PLCOS_ID,
                data.PLCos
                );

            mCtrlListOBJProxy = new Buffer_OBJProxy<FlyData_IBCCtrl>(
                objsys_idx, 
                OBJ_INTERFACE.OBJ_INTERFACE.IBC_OBJ_CTRLLIST_ID, 
                data.CtrlList);
        }
    }
}