\r
/////////////////////////// CTeoria /////////////////////////\r
\r
-double NoOp(CEntorno&) { return 0.0; } // FIXME (hack horrible porque no puedo usar ptr a fun)\r
-\r
// pointer{Teoria} TeoriaNew(string, string, int, int)\r
int SAbrTeoriaNew(brEval args[], brEval* result, void* data)\r
{\r
result->set(new CTeoria(\r
BRSTRING(args),\r
- NoOp, // FIXME (no hay puntero a funcion, poner BRINT(args+1))\r
- //BRSTRING(args+1),\r
+ BRSTRING(args+1),\r
BRINT(args+2),\r
BRINT(args+3)));\r
return EC_OK;\r
return EC_OK;\r
}\r
\r
+// void SistemaAutonomoSetDatoFinal(pointer{SistemaAutonomo}, string, float)\r
+int SAbrSistemaAutonomoSetDatoFinal(brEval args[], brEval* result, void* data)\r
+{\r
+ CSistemaAutonomo* sa = (CSistemaAutonomo*) BRPOINTER(args);\r
+ sa->m_datos_finales.set_val(BRSTRING(args+1), BRDOUBLE(args+2));\r
+ return EC_OK;\r
+}\r
+\r
// void SistemaAutonomoPlan(pointer{SistemaAutonomo})\r
int SAbrSistemaAutonomoPlan(brEval args[], brEval* result, void* data)\r
{\r
- // TODO CSistemaAutonomo* sa = (CSistemaAutonomo*) BRPOINTER(args);\r
- // TODO sa->plan();\r
+ CSistemaAutonomo* sa = (CSistemaAutonomo*) BRPOINTER(args);\r
+ sa->plan();\r
return EC_OK;\r
}\r
\r
-// pointer SistemaAutonomoGetNextTheory(pointer{SistemaAutonomo})\r
+// bool SistemaAutonomoHasNextTheory(pointer{SistemaAutonomo})\r
+int SAbrSistemaAutonomoHasNextTheory(brEval args[], brEval* result, void* data)\r
+{\r
+ CSistemaAutonomo* sa = (CSistemaAutonomo*) BRPOINTER(args);\r
+ result->set(sa->has_next_theory());\r
+ return EC_OK;\r
+}\r
+\r
+// pointer{Teoria} SistemaAutonomoGetNextTheory(pointer{SistemaAutonomo})\r
int SAbrSistemaAutonomoGetNextTheory(brEval args[], brEval* result, void* data)\r
{\r
- // TODO CSistemaAutonomo* sa = (CSistemaAutonomo*) BRPOINTER(args);\r
- // TODO result->set(sa->get_next_theory());\r
- result->set(new CTeoria("test", NoOp, 1, 1)); // FIXME\r
+ CSistemaAutonomo* sa = (CSistemaAutonomo*) BRPOINTER(args);\r
+ result->set(sa->get_next_theory());\r
return EC_OK;\r
}\r
\r
// bool SistemaAutonomoValidateTheory(pointer{SistemaAutonomo}, pointer{Teoria})\r
int SAbrSistemaAutonomoValidateTheory(brEval args[], brEval* result, void* data)\r
{\r
- // TODO CSistemaAutonomo* sa = (CSistemaAutonomo*) BRPOINTER(args);\r
- // TODO result->set(sa->validate_theory((CTeoria*) BRPOINTER(args+1)));\r
- result->set(true); // FIXME\r
+ CSistemaAutonomo* sa = (CSistemaAutonomo*) BRPOINTER(args);\r
+ result->set(sa->validate_theory((CTeoria*) BRPOINTER(args+1)));\r
return EC_OK;\r
}\r
\r
AT_NULL, AT_POINTER, AT_POINTER, 0);\r
brNewBreveCall(data, "SistemaAutonomoSetValue", SAbrSistemaAutonomoSetValue,\r
AT_NULL, AT_POINTER, AT_STRING, AT_DOUBLE, 0);\r
+ brNewBreveCall(data, "SistemaAutonomoSetDatoFinal", SAbrSistemaAutonomoSetDatoFinal,\r
+ AT_NULL, AT_POINTER, AT_STRING, AT_DOUBLE, 0);\r
brNewBreveCall(data, "SistemaAutonomoPlan", SAbrSistemaAutonomoPlan,\r
AT_NULL, AT_POINTER, 0);\r
+ brNewBreveCall(data, "SistemaAutonomoHasNextTheory", SAbrSistemaAutonomoHasNextTheory,\r
+ AT_INT, AT_POINTER, 0);\r
brNewBreveCall(data, "SistemaAutonomoGetNextTheory", SAbrSistemaAutonomoGetNextTheory,\r
AT_POINTER, AT_POINTER, 0);\r
brNewBreveCall(data, "SistemaAutonomoValidateTheory", SAbrSistemaAutonomoValidateTheory,\r