00001 #ifndef RAWSCANRESULTIOHELPER_H
00002 #define RAWSCANRESULTIOHELPER_H
00003
00004 #include <memory>
00005 #include "CommonWithDsp/processor.h"
00006 #include "boost/shared_ptr.hpp"
00007
00008 class TH1D;
00009 class TH2D;
00010 using std::auto_ptr;
00011
00012 namespace SctData {
00013
00014 class RawScanResult;
00015
00018 class RawScanResultIOHelper {
00019 public:
00020 RawScanResultIOHelper() throw() ;
00021 RawScanResult& create() throw() ;
00022 void set(const RawScanResult& ob) throw();
00023 TH2D* getScanData(int iLink) const throw();
00024 boost::shared_ptr<TH2D> getOccupancyPerEvent(int iChip) const throw();
00025 void setScanData(int iLink, auto_ptr<TH2D> data) const throw();
00026 void setOccupancyPerEvent(int iChip, auto_ptr<TH2D> occ) const throw();
00027 void setDataType(UINT16 type) const throw();
00028
00029 void setNumberOccupancyHists(const unsigned short n);
00030 protected:
00031 mutable RawScanResult* raw;
00032 };
00033 }
00034
00035 #endif //#ifndef RAWSCANRESULTIOHELPER_H