00001 #ifndef SCTDATA_SUMMARYWRITER_H
00002 #define SCTDATA_SUMMARYWRITER_H
00003
00004 #include <boost/utility.hpp>
00005 #include <string>
00006 #include <iostream>
00007 #include "Sct/IoExceptions.h"
00008 #include "Sct/LogicErrors.h"
00009
00016 namespace SctData {
00017 class TestResult;
00018 class DefectList;
00019 class DcsData;
00020
00021 namespace TestSummary{
00028 class SummaryWriter : boost::noncopyable {
00029 public:
00035 virtual void write(const TestResult& t, std::ostream& out) const throw(Sct::IoError, Sct::LogicError)=0;
00036
00042 void write(const DefectList& list, std::ostream& out ) const throw(Sct::IoError, Sct::LogicError);
00043
00045 virtual ~SummaryWriter();
00051 void writeHeader(const TestResult&, std::ostream& os) const throw();
00055 static string getChipName(const short unsigned ichip) throw();
00056 protected:
00057 SummaryWriter();
00058
00059 std::string print(const DcsData& data, const std::string& parameter) const;
00060 };
00061 }
00062 }
00063
00064 #endif // #ifdef SCTDATA_SUMMARYWRITER_H