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

OccupancyProjector.h

00001 #ifndef OCCUPANCY_PROJECTOR_H
00002 #define OCCUPANCY_PROJECTOR_H
00003 #include "Sct/Exception.h"
00004 #include "RawScanResult.h"
00005 #include "ModuleElement.h"
00006 
00007 class TH1;
00008 namespace SctData{
00009     using Sct::LogicError;
00010 
00011     class ModuleConfiguration;
00012     class DefectList;
00018     class OccupancyProjector{
00019     public:
00021     OccupancyProjector(const RawScanResult& r) throw();
00023     ~OccupancyProjector() throw() ;
00025 
00031     auto_ptr<TH1> getOccupancy(const char* name, const ModuleElement& element) const throw(LogicError);
00033     void vetoMaskedChannels(const ModuleConfiguration&) throw();
00035     void vetoAllDefects(const DefectList&) throw();
00037     void vetoSeriousDefects(const DefectList&) throw();
00039     void unsetVetos() throw();
00040     private:
00041     //void setRawScanResult(const RawScanResult&) throw();
00042     OccupancyProjector() throw() ; //< don't do this: require a rawScanResult
00043     bool m_vetoAllDefects;
00044     const RawScanResult* raw;
00045     const ModuleConfiguration* config;
00046     const DefectList* defects;
00047     };
00048 } // end of namespace SctData
00049 #endif //#ifndef OCCUPANCY_PROJECTOR_H

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