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