예제 #1
0
        public MainWindow()
        {
            const string versionText   = "2018/1 Silosteuerung";
            const string versionNummer = "V2.0";

            const int anzByteDigInput     = 1;
            const int anzByteDigOutput    = 1;
            const int anzByteAnalogInput  = 2;
            const int anzByteAnalogOutput = 0;


            VersionInfoLokal = versionText + " " + versionNummer;

            Datenstruktur     = new Datenstruktur(anzByteDigInput, anzByteDigOutput, anzByteAnalogInput, anzByteAnalogOutput);
            ConfigPlc         = new ConfigPlc.Plc("./ConfigPlc");
            BeschriftungenPlc = new BeschriftungenPlc();

            var viewModel = new ViewModel.ViewModel(this);

            InitializeComponent();
            DataContext = viewModel;

            DatenRangieren = new DatenRangieren(viewModel);
            PlcDaemon      = new PlcDaemon(Datenstruktur, DatenRangieren.Rangieren);
            DatenRangieren.ReferenzUebergeben(PlcDaemon.Plc);

            DisplayPlc = new DisplayPlc.DisplayPlc(Datenstruktur, ConfigPlc, BeschriftungenPlc);

            TestAutomat = new TestAutomat.TestAutomat(Datenstruktur, DisplayPlc.EventBeschriftungAktualisieren, BeschriftungenPlc, PlcDaemon.Plc);
            TestAutomat.SetTestConfig("./ConfigTests/");
            TestAutomat.TabItemFuellen(TabItemAutomatischerSoftwareTest, DisplayPlc);

            Closing += (_, e) =>
            {
                e.Cancel = true;
                Schliessen();
            };
        }
 public DatenRangieren(ViewModel.ViewModel vm) => _foerderanlageViewModel = vm;