00001 #ifndef SCTDATA_IO_TRIMRANGETESTRESULTSTREAMER_V1_H
00002 #define SCTDATA_IO_TRIMRANGETESTRESULTSTREAMER_V1_H
00003
00004 #include "Sct/Streamer.h"
00005 #include "../TrimRangeTestResult.h"
00006
00007 using namespace SctData;
00008
00009 namespace SctData {
00010 namespace IO {
00011
00012
00018 class TrimRangeTestResultStreamer_v1 : public Streamer {
00019 public:
00020
00021 virtual void write(OStream& out, const Streamable& ob, const IOManager& manager) const throw(LogicError, IoError);
00022 virtual shared_ptr<Streamable> read(IStream& in, const IOManager& manager) const throw(LogicError, IoError);
00023 virtual void read(IStream& in, Streamable& ob, const IOManager& manager) const throw(LogicError, IoError);
00024 virtual unsigned getVersion() const throw() {return s_version;}
00025
00026 private:
00027 void writeData(OStream& out, const TrimRangeTestResult::ChipTrimData& ob, const IOManager& manager) const throw(Sct::LogicError, Sct::IoError);
00028 void readData(IStream& in, TrimRangeTestResult& mytest, TrimRangeTestResult::ChipTrimData& ob, const IOManager& manager) const throw(Sct::LogicError, Sct::IoError);
00029
00030 void writeTrim(OStream& out, const TrimRangeTestResult::ChipTrim& ob, const IOManager& manager) const throw(Sct::LogicError, Sct::IoError);
00031 void readTrim(IStream& in, TrimRangeTestResult& mytest, TrimRangeTestResult::ChipTrim& ob, const IOManager& manager) const throw(Sct::LogicError, Sct::IoError);
00032
00033 TrimRangeTestResultStreamer_v1() throw();
00034 static unsigned s_version;
00035 static bool inMap;
00036 };
00037 }
00038 }
00039 #endif // #ifndef SCTDATA_IO_TRIMRANGETESTRESULTSTREAMER_V1_H