00001 #include "PipelineSummaryWriter.h" 00002 #include "SctData/TestResult.h" 00003 #include "SummaryManager.h" 00004 #include "SctData/ModuleDefect.h" 00005 00006 namespace SctData { 00007 namespace TestSummary{ 00008 void PipelineSummaryWriter::write(const TestResult& t, std::ostream& out) const throw(Sct::IoError, Sct::LogicError) 00009 { 00010 out << "#\n%PipelineTest\n#\n"; 00011 out << "#NGOOD\n#"; 00012 00013 for (unsigned ilink=0; ilink<2; ++ilink){ 00014 00015 for (unsigned ichip=0; ichip<nChipLink; ++ichip){ 00016 out << getChipName(ichip+ilink*nChipLink) << " "; 00017 } 00018 out << endl; 00019 for (unsigned ichip=0; ichip<nChipLink; ++ichip){ 00020 out << nChannelChip - t.getDefects().getNDefectsAffectingElement(Chip(ichip+ilink*nChipLink)) << " "; 00021 } 00022 out << "\n#"; 00023 } 00024 out << endl; 00025 00026 SummaryWriter::write(t.getDefects(), out); 00027 } 00028 00029 bool PipelineSummaryWriter::inMap = SummaryManager::instance().addWriter("SctData::PipelineTestResult", shared_ptr<SummaryWriter>(new PipelineSummaryWriter())); 00030 } 00031 }