Пример #1
0
 public Task(string name, int startSecond, int duration, Event eventObject)
     : base(name, startSecond, duration)
 {
     eventIdentifier = eventObject.identifier;
 }
Пример #2
0
        public void addScenario3()
        {
            scenarioLength = 610;

            Event event1 = new Event("GESTRANDE_TREIN", 5, 600);
            elements.Add(event1);

            // Gesprek met machinist kapotte trein
            elements.Add(new Task("COMMUNICATIE", 10, 90, event1));
            // Gesprek met VKL
            elements.Add(new Task("COMMUNICATIE", 110, 90, event1));

            // Rijweginstelling kapotte trein verhinderen
            elements.Add(new Task("SELECTEER_REGEL", 200, 3, event1));
            elements.Add(new Task("VIND_TREIN", 205, 15, event1));
            elements.Add(new Task("ARI_UIT", 220, 3, event1));
            elements.Add(new Task("DESELECTEER_REGEL", 223, 2, event1));

            // Sein herroepen bij de wissel
            elements.Add(new Task("HERROEP_SEIN", 230, 20, event1));

            // Rijweginstelling trein verhinderen
            elements.Add(new Task("SELECTEER_REGEL", 260, 3, event1));
            elements.Add(new Task("VIND_TREIN", 265, 20, event1));
            elements.Add(new Task("ARI_UIT", 285, 3, event1));

            elements.Add(new Task("HAND_VERWERK_REGEL", 290, 60, event1));
            elements.Add(new Task("ARI_IN", 350, 3, event1));
            elements.Add(new Task("DESELECTEER_REGEL", 355, 3, event1));

            // Communicatie monteur
            elements.Add(new Task("COMMUNICATIE", 380, 60, event1));

            // Rijweginstelling trein herstellen
            elements.Add(new Task("SELECTEER_REGEL", 440, 3, event1));
            elements.Add(new Task("VIND_TREIN", 445, 20, event1));
            elements.Add(new Task("HAND_VERWERK_REGEL", 470, 60, event1));
            elements.Add(new Task("ARI_IN", 530, 3, event1));
            elements.Add(new Task("DESELECTEER_REGEL", 535, 3, event1));
        }
Пример #3
0
        /// <summary>
        /// Een korte (3 min bijvoorbeeld) vertraagde trein, wat problemen oplevert voor een andere trein.
        /// Deze andere trein zou direct na de eerste het spoor moeten kruisen. (sein)
        /// </summary>
        public void addScenario1b()
        {
            scenarioLength = 140;
            Event event1 = new Event("VERTRAAGDE_TREIN_PROBLEEM", 10, 120);
            elements.Add(event1);

            elements.Add(new Task("SELECTEER_REGEL", 15, 3, event1));
            elements.Add(new Task("KWIT_VERT_REGELS", 20, 5, event1));

            elements.Add(new Task("ARI_UIT", 45, 3, event1));
            elements.Add(new Task("HERROEP_SEIN", 50, 20, event1));
            elements.Add(new Task("HAND_VERWERK_REGEL", 70, 20, event1));
            elements.Add(new Task("ARI_IN", 95, 3, event1));

            elements.Add(new Task("VERWERK_VERT_REGELS", 100, 5, event1));
            elements.Add(new Task("DESELECTEER_REGEL", 107, 3, event1));
        }
Пример #4
0
        /// <summary>
        /// Een gestoorde wissel. Met twee treinen, waarvan de voorste niet over de (geklemde) wissel in de correcte richting kan,
        /// en een tweede die hierachter voor een sein staat en wel over de wissel kan.
        /// </summary>
        public void addScenario2()
        {
            scenarioLength = 440;
            Event event1 = new Event("GESTOORDE_WISSEL", 0, 420);
            elements.Add(event1);

            // Voor de trein die niet over de gestoorde wissel kan
            elements.Add(new Task("SELECTEER_REGEL", 2, 5, event1));
            elements.Add(new Task("VIND_TREIN", 5, 15, event1));
            elements.Add(new Task("ARI_UIT", 20, 3, event1));
            elements.Add(new Task("HERROEP_SEIN", 35, 20, event1));
            elements.Add(new Task("DESELECTEER_REGEL", 58, 3, event1));
            // Voor de trein aankomend achter de eerste
            elements.Add(new Task("SELECTEER_REGEL", 62, 3, event1));
            elements.Add(new Task("VIND_TREIN", 65, 15, event1));
            elements.Add(new Task("ARI_UIT", 80, 3, event1));
            elements.Add(new Task("HERROEP_SEIN", 85, 20, event1));
            elements.Add(new Task("DESELECTEER_REGEL", 113, 3, event1));
            // De tweede trein wordt omgeleid
            elements.Add(new Task("SELECTEER_REGEL", 115, 3, event1));
            elements.Add(new Task("HAND_VERWERK_REGEL", 125, 35, event1));
            elements.Add(new Task("VERWERK_VERT_REGELS", 170, 5, event1));
            elements.Add(new Task("ARI_IN", 178, 3, event1));
            elements.Add(new Task("DESELECTEER_REGEL", 184, 3, event1));
            // Na inspectie kan de eerste trein voorzichtig over de geklemde wissel
            elements.Add(new Task("SELECTEER_REGEL", 190, 3, event1));
            elements.Add(new Task("HAND_VERWERK_REGEL", 200, 35, event1));
            elements.Add(new Task("VERWERK_VERT_REGELS", 245, 5, event1));
            elements.Add(new Task("LASTGEVING", 310, 45, event1)); //over geklemde wissel
            elements.Add(new Task("ARI_IN", 365, 3, event1));
            elements.Add(new Task("DESELECTEER_REGEL", 370, 3, event1));
        }
Пример #5
0
        /// <summary>
        /// Een (korte, 1 min bijvoorbeeld) vertraagde trein, zonder problemen voor een andere trein.
        /// Deze andere trein zou bijvoorbeeld 3 min later het spoor van de eerste trein moeten kruisen.
        /// </summary>
        public void addScenario1a()
        {
            scenarioLength = 80;
            Event event1 = new Event("VERTRAAGDE_TREIN_OK", 10, 60);
            elements.Add(event1);

            elements.Add(new Task("SELECTEER_REGEL", 15, 3, event1));
            elements.Add(new Task("KWIT_VERT_REGELS", 20, 5, event1));
            elements.Add(new Task("VERWERK_VERT_REGELS", 45, 5, event1));
            elements.Add(new Task("DESELECTEER_REGEL", 52, 3, event1));
        }