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 Sct_CalibrationController::ScanLibrary_ptr instance();
00012
00013 virtual Sct_CalibrationController::ScanRequest_ptr thresholdScan(unsigned long nTrigs);
00014 virtual Sct_CalibrationController::ScanRequest_ptr thresholdScanfC(unsigned long nTrigs, double calCharge);
00015 virtual Sct_CalibrationController::ScanRequest_ptr thresholdScanfCOffset(unsigned long nTrigs, double calCharge, double offset);
00016 virtual Sct_CalibrationController::ScanRequest_ptr noiseOccupancyScan();
00017 virtual Sct_CalibrationController::ScanRequest_ptr strobeDelayScan(unsigned long nTrigs);
00018 virtual Sct_CalibrationController::ScanRequest_ptr nmaskScan(unsigned long nTrigs);
00019 virtual Sct_CalibrationController::ScanRequest_ptr tokenScan();
00020 virtual Sct_CalibrationController::ScanRequest_ptr defaultScan();
00021 virtual Sct_CalibrationController::ScanRequest_ptr rawScan(unsigned long nTrigs, CORBA::Boolean issueSoftReset);
00022 private:
00023 Sct_SctApi::SctApiIPC_var api;
00024 ScanLibraryImpl();
00025 };
00026 }
00027
00028 #endif //SCANLIBRARYIMPL_H