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