[Avida-SVN] r3295 - in branches/matt/CompeteInstSet/source: actions cpu main

ruppmatt at myxo.css.msu.edu ruppmatt at myxo.css.msu.edu
Sat Jun 6 13:54:41 PDT 2009


Author: ruppmatt
Date: 2009-06-06 16:54:41 -0400 (Sat, 06 Jun 2009)
New Revision: 3295

Modified:
   branches/matt/CompeteInstSet/source/actions/PopulationActions.cc
   branches/matt/CompeteInstSet/source/cpu/cHardwareManager.cc
   branches/matt/CompeteInstSet/source/cpu/cHardwareManager.h
   branches/matt/CompeteInstSet/source/main/cStats.cc
Log:
Initialized stats tracking object properly.

Modified: branches/matt/CompeteInstSet/source/actions/PopulationActions.cc
===================================================================
--- branches/matt/CompeteInstSet/source/actions/PopulationActions.cc	2009-06-06 19:57:32 UTC (rev 3294)
+++ branches/matt/CompeteInstSet/source/actions/PopulationActions.cc	2009-06-06 20:54:41 UTC (rev 3295)
@@ -314,7 +314,7 @@
   double m_merit;
   int m_lineage_label;
   double m_neutral_metric;
-  double m_inst_set_id;
+  int m_inst_set_id;
 public:
   cActionInjectSequence(cWorld* world, const cString& args)
   : cAction(world, args), m_cell_start(0), m_cell_end(-1), m_merit(-1), m_lineage_label(0), m_neutral_metric(0), m_inst_set_id(0)

Modified: branches/matt/CompeteInstSet/source/cpu/cHardwareManager.cc
===================================================================
--- branches/matt/CompeteInstSet/source/cpu/cHardwareManager.cc	2009-06-06 19:57:32 UTC (rev 3294)
+++ branches/matt/CompeteInstSet/source/cpu/cHardwareManager.cc	2009-06-06 20:54:41 UTC (rev 3295)
@@ -111,7 +111,8 @@
       m_inst_sets[id] = new_inst_set;
     } else{  //If we have to resize the array to accomodate the ID
       m_inst_sets.Resize(id+1, NULL);
-      m_world->GetStats().GetInstSetCounts().Resize(id+1,0);
+      if (m_inst_sets.GetSize() > 1) //Update our stats object if more than one inst set is added.   Initial size is set in cStats constructor.
+        m_world->GetStats().GetInstSetCounts().Resize(id+1,0);
       m_inst_sets[id] = new_inst_set;
     }
   } else{ //Our instruction set is incompatible

Modified: branches/matt/CompeteInstSet/source/cpu/cHardwareManager.h
===================================================================
--- branches/matt/CompeteInstSet/source/cpu/cHardwareManager.h	2009-06-06 19:57:32 UTC (rev 3294)
+++ branches/matt/CompeteInstSet/source/cpu/cHardwareManager.h	2009-06-06 20:54:41 UTC (rev 3295)
@@ -76,6 +76,8 @@
   const cInstSet& GetInstSet(int id=0) const { assert(id < m_inst_sets.GetSize()); return *(m_inst_sets[id]); }
   cInstSet& GetInstSet(int id=0) { assert(id < m_inst_sets.GetSize()); return *(m_inst_sets[id]); }
   
+  int GetNumInstSets() const { return m_inst_sets.GetSize(); }
+  
   bool AddInstSet(const cString& filename, int id = 0);
 };
 

Modified: branches/matt/CompeteInstSet/source/main/cStats.cc
===================================================================
--- branches/matt/CompeteInstSet/source/main/cStats.cc	2009-06-06 19:57:32 UTC (rev 3294)
+++ branches/matt/CompeteInstSet/source/main/cStats.cc	2009-06-06 20:54:41 UTC (rev 3295)
@@ -127,6 +127,7 @@
   task_cur_max_quality.Resize(num_tasks);
   task_last_max_quality.Resize(num_tasks);
   task_exe_count.Resize(num_tasks);
+  inst_set_orgs.Resize(m_world->GetHardwareManager().GetNumInstSets(), 0);
   task_cur_count.SetAll(0);
   task_cur_quality.SetAll(0);
   task_cur_max_quality.SetAll(0);




More information about the Avida-cvs mailing list