00001 #ifndef SCTDATADISPLAY_TESTDISPLAYER_H 00002 #define SCTDATADISPLAY_TESTDISPLAYER_H 00003 00004 #include "Displayer.h" 00005 00006 #include <vector> 00007 #include <boost/shared_ptr.hpp> 00008 00009 using std::vector; 00010 using boost::shared_ptr; 00011 00012 class TCanvas; 00013 00014 namespace SctData { 00015 class TestResult; 00016 } 00017 00018 namespace SctDataDisplay { 00019 00020 class TestDisplayData : public DisplayData { 00021 public: 00022 vector<shared_ptr<TCanvas> > canvas; 00023 vector<shared_ptr<DisplayData> > otherData; 00024 00025 }; 00026 00027 00032 class TestDisplayer : public virtual GenericDisplayer { 00033 public: 00034 TestDisplayer() {} 00038 shared_ptr<DisplayData> display(shared_ptr<const Sct::Serializable> data, const DisplayInfo& info, std::ostream& os); 00039 00040 virtual bool canDisplay(const Sct::Serializable& ob); 00041 00042 protected: 00046 virtual void displayTestResult(const SctData::TestResult& result, TestDisplayData& data, const DisplayInfo& info, std::ostream& os); 00047 00051 void displayAllRaws(const SctData::TestResult& result, TestDisplayData& data, const DisplayInfo& info, std::ostream& os); 00052 00053 private: 00054 void printSummaryString(const SctData::TestResult& result, std::ostream& os); 00055 static bool inList; 00056 }; 00057 } 00058 00059 #endif //SCTDATADISPLAY_NOISEOCCUPANCYDISPLAYER_H