]> git.llucax.com Git - z.facultad/75.68/celdas.git/blobdiff - trunk/src/SistemaAutonomo.tz
Evitamos memory leaks.
[z.facultad/75.68/celdas.git] / trunk / src / SistemaAutonomo.tz
index 147c7760b2054a46c37f99cd834243f15cd7a891..b47452a9a5feaa924a0bdbf58750e4deb031a110 100644 (file)
@@ -1,72 +1,82 @@
-@use Control.
-
-@plugin "plugin.so" (SAbrFunctions).
-
-Object : Teoria (aka Teorias) {
-
-       + variables:
-               ptr (pointer).
-
-       + to init named name (string) with-action action (string)
-                       executed k = 1 (int) succeeded p = 1 (int):
-               ptr = TeoriaNew(name, action, k, p).
-               
-       + to set-dato-inicial name theName (string) value theValue (float):
-               TeoriaSetDatoInicial(ptr, theName, theValue).
-
-       + to set-dato-final name theName (string) value theValue (float):
-               TeoriaSetDatoFinal(ptr, theName, theValue).
-
-       + to get-nombre:
-               return TeoriaGetNombre(ptr).
-
-       + to get-accion:
-               return TeoriaGetAccion(ptr).
-
-       - to get-ptr:
-               return ptr.
-
-       - to set-ptr ptr p (pointer):
-               ptr = p.
-
-       + to destroy:
-               TeoriaDelete(ptr).
-}
-
-Object : SistemaAutonomo {
-
-       + variables:
-               ptr (pointer).
-
-       + to init:
-               ptr = SistemaAutonomoNew().     
-               
-       + to add teoria theTeoria (object):
-               SistemaAutonomoAddTeoria(ptr, (theTeoria get-ptr)).
-
-       + to set value theValue (float) with-name theName (string):
-               SistemaAutonomoSetValue(ptr, theName, theValue).
-
-       + to update entorno theEntorno (hash):
-               nombre (string).
-               foreach nombre in keys(theEntorno): {
-                       print "Seteando valor de entorno ", nombre, " con ", theEntorno{nombre}.
-                       self set value theEntorno{nombre} with-name nombre.
-               }
-
-       + to plan:
-               SistemaAutonomoPlan(ptr).
-
-       + to get-next-theory:
-               t (object).
-               t = new Teoria.
-               t set-ptr ptr SistemaAutonomoGetNextTheory(ptr).
-               return t.
-
-       + to validate theory theTheory (object):
-               return SistemaAutonomoValidateTheory(ptr, (theTheory get-ptr)).
-
-       + to destroy:
-               SistemaAutonomoDelete(ptr).
-}
-
+\r
+@plugin "plugin.so" (SAbrFunctions).\r
+\r
+@define ANY -3000000.\r
+\r
+Object : Teoria (aka Teorias) {\r
+\r
+       + variables:\r
+               ptr (pointer).\r
+\r
+       + to init named name (string) with-action action (string)\r
+                       executed k = 1 (int) succeeded p = 1 (int):\r
+               ptr = TeoriaNew(name, action, k, p).\r
+               \r
+       + to set-dato-inicial name theName (string) value theValue (float):\r
+               TeoriaSetDatoInicial(ptr, theName, theValue).\r
+\r
+       + to set-dato-final name theName (string) value theValue (float):\r
+               TeoriaSetDatoFinal(ptr, theName, theValue).\r
+\r
+       + to get-nombre:\r
+               return TeoriaGetNombre(ptr).\r
+\r
+       + to get-accion:\r
+               return TeoriaGetAccion(ptr).\r
+\r
+       - to get-ptr:\r
+               return ptr.\r
+\r
+       - to set-ptr ptr p (pointer):\r
+               ptr = p.\r
+\r
+}\r
+\r
+Object : SistemaAutonomo {\r
+\r
+       + variables:\r
+               ptr (pointer).\r
+\r
+       + to init:\r
+               ptr = SistemaAutonomoNew().     \r
+               \r
+       + to add teoria theTeoria (object):\r
+               SistemaAutonomoAddTeoria(ptr, (theTeoria get-ptr)).\r
+\r
+       + to set-entorno value theValue (float) with-name theName (string):\r
+               SistemaAutonomoSetValue(ptr, theName, theValue).\r
+\r
+       + to set-dato-final value theValue (float) with-name theName (string):\r
+               SistemaAutonomoSetDatoFinal(ptr, theName, theValue).\r
+\r
+       + to update-entorno entorno theEntorno (hash):\r
+               nombre (string).\r
+               foreach nombre in keys(theEntorno): {\r
+                       self set-entorno value theEntorno{nombre} with-name nombre.\r
+               }\r
+\r
+       + to update-datos-finales datos-finales datos (hash):\r
+               nombre (string).\r
+               foreach nombre in keys(datos): {\r
+                       self set-dato-final value datos{nombre} with-name nombre.\r
+               }\r
+\r
+       + to plan:\r
+               SistemaAutonomoPlan(ptr).\r
+\r
+       + to has-next-theory:\r
+               return SistemaAutonomoHasNextTheory(ptr).\r
+\r
+       + to get-next-theory:\r
+               t (object).\r
+               t = new Teoria.\r
+               t set-ptr ptr SistemaAutonomoGetNextTheory(ptr).\r
+               return t.\r
+\r
+       + to validate theory theTheory (object):\r
+               return SistemaAutonomoValidateTheory(ptr, (theTheory get-ptr)).\r
+\r
+       + to destroy:\r
+               SistemaAutonomoDelete(ptr).\r
+}\r
+\r