Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Related Pages

Displayer.h

00001 #ifndef SCTDATADISPLAY_DISPLAYER_H
00002 #define SCTDATADISPLAY_DISPLAYER_H
00003 
00004 #include <boost/shared_ptr.hpp>
00005 #include <string>
00006 #include <iostream>
00007 
00008 using boost::shared_ptr;
00009 using std::string;
00010 
00011 namespace Sct {
00012     class Serializable;
00013 }
00014 
00015 namespace SctData {
00016     class DefectList;
00017 }
00018 
00019 class TCanvas;
00020 
00021 
00022 
00023 namespace SctDataDisplay {
00024  
00025 class DisplayInfo;
00026 
00027 
00033 class DisplayData {
00034 };
00035 
00036 
00042 class Displayer {
00043 public:
00044   Displayer() {}
00049     virtual shared_ptr<DisplayData> display(shared_ptr<const Sct::Serializable> data, const DisplayInfo& info, std::ostream& os) = 0;
00050     
00051 protected:           
00055     static shared_ptr<TCanvas> createCanvas(string name, string title);
00056     
00060     static void divideCanvas(unsigned int n, TCanvas& canvas);
00061     
00065     void printDefectList(const SctData::DefectList& list, std::ostream& os);
00066 
00067 };
00068 
00069 
00073 class GenericDisplayer : public virtual Displayer {
00074 public:
00080     virtual bool canDisplay(const Sct::Serializable& ob) = 0;
00081 
00082 };
00083 
00084 }
00085 
00086 #endif //SCTDATADISPLAY_DISPLAYER_H

Generated on Thu Jul 15 09:50:45 2004 for SCT DAQ/DCS Software - C++ by doxygen 1.3.5