Browse Source

Add missing files

Yentl Van Tendeloo 8 years ago
parent
commit
806f167ae1
2 changed files with 59 additions and 0 deletions
  1. 43 0
      core/pm.mvc
  2. 16 0
      integration/code/pn_critical_section.mvc

+ 43 - 0
core/pm.mvc

@@ -0,0 +1,43 @@
+import models/SimpleClassDiagrams as SimpleClassDiagrams
+include "primitives.alh"
+
+SimpleClassDiagrams ProcessModel {
+    SimpleAttribute MvCName {
+        constraint = $
+            String function constraint(model : Element, name : String):
+                if (bool_not(is_physical_string(model["model"][name]))):
+                    return "MvCName has no string value"!
+                else:
+                    return "OK"!
+            $
+    }
+
+    Class Activity {}
+    Class Start : Activity {
+        lower_cardinality = 1
+        upper_cardinality = 1
+    }
+    Class Finish : Activity {
+        lower_cardinality = 1
+    }
+    Class Fork : Activity {}
+    Class Join : Activity {}
+    Class Decision : Activity {}
+    Class And : Decision {}
+    Class Or : Decision {}
+    Class Not : Decision {}
+
+    Class Exec : Activity {
+        name : MvCName
+    }
+
+    Class Data {
+        name : MvCName
+        type : MvCName
+    }
+
+    Association Produces (Exec, Data) {}
+    Association Consumes (Data, Exec) {}
+}
+
+export ProcessModel to models/ProcessModel

+ 16 - 0
integration/code/pn_critical_section.mvc

@@ -0,0 +1,16 @@
+PetriNets critical_section{
+    Place crit_1{
+        name = "CS1"
+        tokens = 0
+    }
+
+    Place crit_2{
+        name = "CS2"
+        tokens = 0
+    }
+
+    Place available{
+        name = "available"
+        tokens = 1
+    }
+}