00001 #ifndef SCANLIBRARY_H 00002 #define SCANLIBRARY_H 00003 00004 #include "Sct_CalibrationController.hh" 00005 #include "ScanRequest.h" 00006 #include <boost/utility.hpp> 00007 #include <ipc/object.h> 00008 00009 namespace SctCalibrationController { 00010 namespace Ipc { 00011 00012 class ScanLibrary : public IPCCallback, public virtual Sct_CalibrationController_T_ScanLibrary, boost::noncopyable { 00013 public: 00014 virtual Sct_CalibrationController_T_ScanRequest * thresholdScan (Sct_CalibrationControllerStatus *_status, ilu_Cardinal nTrigs); 00015 virtual Sct_CalibrationController_T_ScanRequest * thresholdScanfC (Sct_CalibrationControllerStatus *_status, ilu_Cardinal nTrigs, ilu_Real calCharge); 00016 virtual Sct_CalibrationController_T_ScanRequest * noiseOccupancyScan (Sct_CalibrationControllerStatus *_status); 00017 virtual Sct_CalibrationController_T_ScanRequest * strobeDelayScan (Sct_CalibrationControllerStatus *_status, ilu_Cardinal nTrigs); 00018 virtual Sct_CalibrationController_T_ScanRequest * nmaskScan (Sct_CalibrationControllerStatus *_status, ilu_Cardinal nTrigs); 00019 virtual Sct_CalibrationController_T_ScanRequest * tokenScan (Sct_CalibrationControllerStatus *_status); 00020 00021 virtual Sct_CalibrationController_T_ScanRequest * defaultScan (Sct_CalibrationControllerStatus *_status); 00022 00023 virtual Sct_CalibrationController_T_ScanRequest * rawScan (Sct_CalibrationControllerStatus *_status, unsigned long nTrigs); 00024 00025 virtual ScanRequestImpl& thresholdScan(unsigned long nTrigs) const = 0; 00026 virtual ScanRequestImpl& thresholdScanfC(unsigned long nTrigs, double calCharge) const = 0; 00027 virtual ScanRequestImpl& thresholdScanfCOffset(unsigned long nTrigs, double calCharge, double offset) const = 0; 00028 virtual ScanRequestImpl& noiseOccupancyScan() const = 0; 00029 virtual ScanRequestImpl& strobeDelayScan(unsigned long nTrigs) const = 0; 00030 virtual ScanRequestImpl& nmaskScan(unsigned long nTrigs) const = 0; 00031 virtual ScanRequestImpl& tokenScan() const = 0; 00032 virtual ScanRequestImpl& defaultScan() const = 0; 00033 virtual ScanRequestImpl& rawScan(unsigned long nTrigs) const = 0; 00034 protected: 00035 ScanLibrary(); 00036 }; 00037 } 00038 } 00039 #endif //SCANLIBRARY_H