products/Sources/formale Sprachen/VDM/VDMRT/VDMRT image not shown  

Quellcode-Bibliothek

© Kompilation durch diese Firma

[Weder Korrektheit noch Funktionsfähigkeit der Software werden zugesichert.]

Datei: VDM.vdmrt   Sprache: VDM

Original von: VDM©

\section{VDM System}

\begin{vdm_al}

-----------------------------------------------
-- Class: VDM
-- Description:  VDM is the system class in the VDM project
-----------------------------------------------

--
-- class definition
--
system VDM

--
-- instance variables
--
instance variables

cpu0 : CPU := new CPU (<FP>,1E6);  -- changed for setPriority to work
cpu1 : CPU := new CPU (<FCFS>,1E6);
cpu2 : CPU := new CPU (<FCFS>,1E6);
cpu3 : CPU := new CPU (<FCFS>,1E6);
cpu4 : CPU := new CPU (<FCFS>,1E6);
cpu5 : CPU := new CPU (<FCFS>,1E6);
cpu6 : CPU := new CPU (<FCFS>,1E6);
cpu7 : CPU := new CPU (<FCFS>,1E6);
cpu8 : CPU := new CPU (<FCFS>,1E6);
cpu9 : CPU := new CPU (<FCFS>,1E6);
cpu10 : CPU := new CPU (<FCFS>,1E6);
cpu11 : CPU := new CPU (<FCFS>,1E6);
cpu12 : CPU := new CPU (<FCFS>,1E6);
cpu13 : CPU := new CPU (<FCFS>,1E6);
cpu14 : CPU := new CPU (<FCFS>,1E6);

bus1 : BUS := new BUS (<FCFS>,1E6,{cpu0,cpu1, cpu2, cpu3, cpu4, cpu5, cpu6,
         cpu7, cpu8, cpu9, cpu10, cpu11, cpu12, cpu13, cpu14});
--bus1 : BUS := new BUS (<FCFS>,1E6,{cpu0,cpu1});
--bus2 : BUS := new BUS (<FCFS>,1E6,{cpu0,cpu2});
--bus3 : BUS := new BUS (<FCFS>,1E6,{cpu0,cpu3});
--bus4 : BUS := new BUS (<FCFS>,1E6,{cpu0,cpu4});
--bus5 : BUS := new BUS (<FCFS>,1E6,{cpu0,cpu5});
--bus6 : BUS := new BUS (<FCFS>,1E6,{cpu0,cpu6});
--bus7 : BUS := new BUS (<FCFS>,1E6,{cpu0,cpu7});
--bus8 : BUS := new BUS (<FCFS>,1E6,{cpu0,cpu8});
--bus9 : BUS := new BUS (<FCFS>,1E6,{cpu0,cpu9});
--bus10 : BUS := new BUS (<FCFS>,1E6,{cpu0,cpu10});
--bus11 : BUS := new BUS (<FCFS>,1E6,{cpu0,cpu11});
--bus12 : BUS := new BUS (<FCFS>,1E6,{cpu0,cpu12});
--bus13 : BUS := new BUS (<FCFS>,1E6,{cpu0,cpu13});
--bus14 : BUS := new BUS (<FCFS>,1E6,{cpu0,cpu14});

-- Vehicles
public static ctrl1 : Controller := new Controller(
         new Vehicle(1, 
         new Position(1, 1), 1, <NORTH>));

public static ctrl2 : Controller := new Controller(
         new Vehicle(2, 
         new Position(1, 2), 1, <NORTH>));

public static ctrl3 : Controller := new Controller(
         new Vehicle(3, 
         new Position(1, 3), 1, <NORTH>));

public static ctrl4 : Controller := new Controller(
         new Vehicle(4, 
         new Position(1, 3), 1, <SOUTH>));

public static ctrl5 : Controller := new Controller(
         new Vehicle(5, 
         new Position(1, 0), 1, <NORTH>));

public static ctrl6 : Controller := new Controller(
         new Vehicle(6, 
         new Position(1, 0), 1, <NORTH>));

public static ctrl7 : Controller := new Controller(
         new Vehicle(7, 
         new Position(1, -4), 1, <NORTH>));

public static ctrl8 : Controller := new Controller(
         new Vehicle(8, 
         new Position(1, 5), 1, <SOUTH>));

public static ctrl9 : Controller := new Controller(
         new Vehicle(9, 
         new Position(1, 6), 1, <SOUTH>));

public static ctrl10 : Controller := new Controller(
          new Vehicle(10, 
          new Position(1, 8), 1, <SOUTH>));

public static ctrl11 : Controller := new Controller(
          new Vehicle(11, 
          new Position(1, 5), 1, <EAST>));

public static ctrl12 : Controller := new Controller(
           new Vehicle(12, 
           new Position(7, 5), 1, <WEST>));

public static ctrl13 : Controller := new Controller(
          new Vehicle(13, 
          new Position(12, 5), 1, <WEST>));

public static ctrl14 : Controller := new Controller(
          new Vehicle(14, 
          new Position(14, 5), 1, <WEST>));




--traffic lights
public static tl1 : TrafficLight := new TrafficLight(20 
             ,new Position(1, 1)
             , 100);

-- environment 
public static vdmCtrl : VDMController := new VDMController();

--
-- Operations definition section
--
operations

public VDM: () ==> VDM
 VDM() ==
 (
 cpu1.deploy(ctrl1); 
 cpu2.deploy(ctrl2);
 cpu3.deploy(ctrl3);
 cpu4.deploy(ctrl4);
 cpu5.deploy(ctrl5);
 cpu6.deploy(ctrl6);
 cpu7.deploy(ctrl7);
 cpu8.deploy(ctrl8);
 cpu9.deploy(ctrl9);
 cpu10.deploy(ctrl10);
 cpu11.deploy(ctrl11);
 cpu12.deploy(ctrl12);
 cpu13.deploy(ctrl13);
 cpu14.deploy(ctrl14);
   
  
 cpu0.deploy(vdmCtrl);
 cpu0.setPriority(VDMController`getController,500);
 cpu0.setPriority(VDMController`CalculateInRange,100);
 
 );

end VDM


\end{vdm_al}

\begin{rtinfo}
[TotalxCoverage]{vdm.tc}[VDM]
\end{rtinfo}

¤ Dauer der Verarbeitung: 0.14 Sekunden  (vorverarbeitet)  ¤





Download des
Quellennavigators
Download des
sprechenden Kalenders

in der Quellcodebibliothek suchen




Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.


Bemerkung:

Die farbliche Syntaxdarstellung ist noch experimentell.


Bot Zugriff