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