00001 #ifndef SCANLIBRARYIMPL_H
00002 #define SCANLIBRARYIMPL_H
00003
00004 #include "ipc/ScanLibrary.h"
00005
00006 namespace SctCalibrationController {
00007 using namespace Ipc;
00008
00009 class ScanLibraryImpl : public ScanLibrary {
00010 public:
00011 static ScanLibraryImpl& instance();
00012
00013 virtual ScanRequestImpl& thresholdScan(unsigned long nTrigs) const;
00014 virtual ScanRequestImpl& thresholdScanfC(unsigned long nTrigs, double calCharge) const;
00015 virtual ScanRequestImpl& thresholdScanfCOffset(unsigned long nTrigs, double calCharge, double offset) const;
00016 virtual ScanRequestImpl& noiseOccupancyScan() const;
00017 virtual ScanRequestImpl& strobeDelayScan(unsigned long nTrigs) const;
00018 virtual ScanRequestImpl& nmaskScan(unsigned long nTrigs) const;
00019 virtual ScanRequestImpl& tokenScan() const;
00020 virtual ScanRequestImpl& defaultScan() const;
00021 virtual ScanRequestImpl& rawScan(unsigned long nTrigs) const;
00022 private:
00023 Sct_SctApi_T_SctApi* api;
00024 ScanLibraryImpl();
00025 };
00026 }
00027
00028 #endif //SCANLIBRARYIMPL_H