00001 #ifndef ArchTimeWalkTestResult_H
00002 #define ArchTimeWalkTestResult_H
00003
00004
00005 #include "Sct/SctNames.h"
00006 #include "ArchTestResult.h"
00007 #include "SctData/TimeWalkTestResult.h"
00008 #include <TVectorD.h>
00009 #include <vector>
00010 #include <boost/shared_ptr.hpp>
00011
00012
00013 using boost::shared_ptr;
00014 using namespace SctData;
00015 using namespace Sct;
00016
00017
00018 class ArchTimeWalkTestResult: public ArchTestResult {
00019
00020 private:
00021 vector<float> timewalk;
00022 vector<float> calibration;
00023
00024 vector< shared_ptr<TVector> > v_timewalk;
00025 vector< shared_ptr<TVector> > v_calibration;
00026
00027 static bool inMap;
00028
00029 ArchTimeWalkTestResult(shared_ptr<TimeWalkTestResult>);
00030
00031 public:
00032
00033 ArchTimeWalkTestResult();
00034 virtual shared_ptr<ArchTestResult> clone(shared_ptr<TestResult> test) {
00035 shared_ptr<TimeWalkTestResult> TWtest = dynamic_pointer_cast<TimeWalkTestResult>(test);
00036 return shared_ptr<ArchTestResult>(new ArchTimeWalkTestResult(TWtest));
00037 }
00038 ~ArchTimeWalkTestResult();
00039
00040 void SaveTimeWalkTestDataOnly();
00041 void Save();
00042 void TestSummary(shared_ptr<TimeWalkTestResult>);
00043
00044 };
00045
00046
00047 #endif