| 708 | } |
| 709 | |
| 710 | void cHardwareGP8::SetupMiniTraceFileHeader(Avida::Output::File& df, const int gen_id, const Apto::String& genotype) |
| 711 | { |
| 712 | const Genome& in_genome = m_organism->GetGenome(); |
| 713 | ConstInstructionSequencePtr in_seq_p; |
| 714 | in_seq_p.DynamicCastFrom(in_genome.Representation()); |
| 715 | const InstructionSequence& in_seq = *in_seq_p; |
| 716 | |
| 717 | df.WriteTimeStamp(); |
| 718 | cString org_dat(""); |
| 719 | df.WriteComment(org_dat.Set("Update Born: %d", m_world->GetStats().GetUpdate())); |
| 720 | df.WriteComment(org_dat.Set("Org ID: %d", m_organism->GetID())); |
| 721 | df.WriteComment(org_dat.Set("Genotype ID: %d", gen_id)); |
| 722 | df.WriteComment(org_dat.Set("Genotype: %s", (const char*) genotype)); |
| 723 | df.WriteComment(org_dat.Set("Genome Length: %d", in_seq.GetSize())); |
| 724 | df.WriteComment(" "); |
| 725 | df.WriteComment("Exec Stats Columns:"); |
| 726 | df.WriteComment("CPU Cycle"); |
| 727 | df.WriteComment("MicroOp"); |
| 728 | df.WriteComment("Current Update"); |
| 729 | df.WriteComment("Queued Eat"); |
| 730 | df.WriteComment("Queued Move"); |
| 731 | df.WriteComment("Queued Rotate (Number)"); |
| 732 | df.WriteComment("Register Contents (CPU Cycle Origin of Contents)"); |
| 733 | df.WriteComment("Current Thread"); |
| 734 | df.WriteComment("IP Position"); |
| 735 | df.WriteComment("RH Position"); |
| 736 | df.WriteComment("WH Position"); |
| 737 | df.WriteComment("FH Position"); |
| 738 | df.WriteComment("CPU Cycle of Last Output"); |
| 739 | df.WriteComment("Current Merit"); |
| 740 | df.WriteComment("Current Bonus"); |
| 741 | df.WriteComment("Forager Type"); |
| 742 | df.WriteComment("Group ID (opinion)"); |
| 743 | df.WriteComment("Current Cell"); |
| 744 | df.WriteComment("Avatar Cell"); |
| 745 | df.WriteComment("Faced Direction"); |
| 746 | df.WriteComment("Faced Cell Occupied?"); |
| 747 | df.WriteComment("Faced Cell Has Hill?"); |
| 748 | df.WriteComment("Faced Cell Has Wall?"); |
| 749 | df.WriteComment("Queued Instruction"); |
| 750 | df.WriteComment("Trailing NOPs"); |
| 751 | df.WriteComment("Did Queued Instruction Execute (-1=no, paying cpu costs; 0=failed; 1=yes)"); |
| 752 | df.Endl(); |
| 753 | } |
| 754 | |
| 755 | void cHardwareGP8::PrintMiniTraceStatus(cAvidaContext& ctx, ostream& fp) |
| 756 | { |
no test coverage detected