[Avida-SVN] r2223 - branches/energy/source/main
beckma24 at myxo.css.msu.edu
beckma24 at myxo.css.msu.edu
Tue Dec 4 11:29:08 PST 2007
Author: beckma24
Date: 2007-12-04 14:29:08 -0500 (Tue, 04 Dec 2007)
New Revision: 2223
Modified:
branches/energy/source/main/cTaskLib.cc
branches/energy/source/main/cTaskLib.h
Log:
added move neutral task
Modified: branches/energy/source/main/cTaskLib.cc
===================================================================
--- branches/energy/source/main/cTaskLib.cc 2007-12-04 13:47:43 UTC (rev 2222)
+++ branches/energy/source/main/cTaskLib.cc 2007-12-04 19:29:08 UTC (rev 2223)
@@ -388,6 +388,8 @@
// Movement Tasks
if (name == "move_up_gradient")
NewTask(name, "Move up gradient", &cTaskLib::Task_MoveUpGradient);
+ else if (name == "move_neutral_gradient")
+ NewTask(name, "Move neutral gradient", &cTaskLib::Task_MoveNeutralGradient);
else if (name == "move_down_gradient")
NewTask(name, "Move down gradient", &cTaskLib::Task_MoveDownGradient);
else if (name == "move_not_up_gradient")
@@ -2767,6 +2769,12 @@
return 0.0;
}
+double cTaskLib::Task_MoveNeutralGradient(cTaskContext& ctx) const {
+ if(ctx.GetOrganism()->GetGradientMovement() == 0.0)
+ return 1.0;
+ return 0.0;
+}
+
double cTaskLib::Task_MoveDownGradient(cTaskContext& ctx) const {
if(ctx.GetOrganism()->GetGradientMovement() == -1.0)
return 1.0;
Modified: branches/energy/source/main/cTaskLib.h
===================================================================
--- branches/energy/source/main/cTaskLib.h 2007-12-04 13:47:43 UTC (rev 2222)
+++ branches/energy/source/main/cTaskLib.h 2007-12-04 19:29:08 UTC (rev 2223)
@@ -279,6 +279,7 @@
// Movement tasks (temp, rely on hack)
double Task_MoveUpGradient(cTaskContext& ctx) const;
+ double Task_MoveNeutralGradient(cTaskContext& ctx) const;
double Task_MoveDownGradient(cTaskContext& ctx) const;
double Task_MoveNotUpGradient(cTaskContext& ctx) const;
};
More information about the Avida-cvs
mailing list