Просмотр исходного кода

Add example model and made minor changes to MM

Yentl Van Tendeloo 7 лет назад
Родитель
Сommit
464c1a06e4
2 измененных файлов с 59 добавлено и 1 удалено
  1. 4 1
      models/WSC/pm.mvc
  2. 55 0
      models/WSC/pm_example.mvc

+ 4 - 1
models/WSC/pm.mvc

@@ -4,6 +4,10 @@ SimpleAttribute PythonCode {}
 
 Class ProcessNode {}
 
+Class Initial {}
+
+Class Finish {}
+
 Class Activity : ProcessNode {
     distribution : PythonCode
 }
@@ -13,7 +17,6 @@ Class ParallelSplit : ProcessNode {}
 Class Synchronization : ProcessNode {}
 
 Class ExclusiveChoice : ProcessNode {
-    choices : Natural
     distribution : PythonCode
 }
 

+ 55 - 0
models/WSC/pm_example.mvc

@@ -0,0 +1,55 @@
+Initial init {}
+Activity req {
+    distribution = """
+        def func(iteration):
+            return iteration
+        return func
+        """
+}
+SimpleMerge merge {}
+Activity model {
+    distribution = """
+        def func(iteration):
+            return iteration
+        return func
+        """
+}
+ParallelSplit split {}
+MultiInstance simulate {
+    nr_instances = 10
+    distribution = """
+        def func(iteration):
+            return iteration
+        return func
+        """
+}
+Activity check {
+    distribution = """
+        def func(iteration):
+            return iteration
+        return func
+        """
+}
+Synchronization sync {}
+Activity evaluate {
+    distribution = """
+        def func(iteration):
+            return iteration
+        return func
+        """
+}
+ExclusiveChoice choice {}
+Finish finish {}
+
+Next (init, req) {}
+Next (req, merge) {}
+Next (merge, model) {}
+Next (model, split) {}
+Next (split, simulate) {}
+Next (split, check) {}
+Next (simulate, sync) {}
+Next (check, sync) {}
+Next (sync, evaluate) {}
+Next (evaluate, choice) {}
+Next (choice, finish) {}
+Next (choice, merge) {}