00001 #ifndef TESTLIBRARY_H 00002 #define TESTLIBRARY_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 TestRequestImpl; 00012 00013 class TestLibrary : public IPCCallback, public virtual Sct_CalibrationController_T_TestLibrary, boost::noncopyable { 00014 public: 00015 Sct_CalibrationController_T_TestRequest * responseCurve (Sct_CalibrationControllerStatus *_status); 00016 Sct_CalibrationController_T_TestRequest * threePointGain (Sct_CalibrationControllerStatus *_status); 00017 Sct_CalibrationController_T_TestRequest * fivePointGain (Sct_CalibrationControllerStatus *_status); 00018 Sct_CalibrationController_T_TestRequest * strobeDelay (Sct_CalibrationControllerStatus *_status); 00019 Sct_CalibrationController_T_TestRequest * noiseOccupancy (Sct_CalibrationControllerStatus *_status); 00020 Sct_CalibrationController_T_TestRequest * pipeline (Sct_CalibrationControllerStatus *_status); 00021 Sct_CalibrationController_T_TestRequest * fullBypassBarrel (Sct_CalibrationControllerStatus *_status); 00022 Sct_CalibrationController_T_TestRequest * fullBypassEndcap (Sct_CalibrationControllerStatus *_status); 00023 Sct_CalibrationController_T_TestRequest * trimRange (Sct_CalibrationControllerStatus *_status); 00024 Sct_CalibrationController_T_TestRequest * quickTrimRange (Sct_CalibrationControllerStatus *_status); 00025 Sct_CalibrationController_T_TestRequest * timeWalk (Sct_CalibrationControllerStatus *_status); 00026 Sct_CalibrationController_T_TestRequest * nmask (Sct_CalibrationControllerStatus *_status); 00027 Sct_CalibrationController_T_TestRequest * doubleTriggerNoise (Sct_CalibrationControllerStatus *_status); 00028 Sct_CalibrationController_T_TestRequest * synchTriggerNoise (Sct_CalibrationControllerStatus *_status); 00029 00030 Sct_CalibrationController_T_TestRequest * rxDelay (Sct_CalibrationControllerStatus *_status); 00031 Sct_CalibrationController_T_TestRequest * rxThreshold (Sct_CalibrationControllerStatus *_status); 00032 Sct_CalibrationController_T_TestRequest * rxThresholdBasedOnConfigRegister (Sct_CalibrationControllerStatus *_status); 00033 Sct_CalibrationController_T_TestRequest * txCurrent (Sct_CalibrationControllerStatus *_status); 00034 00035 virtual TestRequestImpl& responseCurve() const = 0; 00036 virtual TestRequestImpl& threePointGain() const = 0; 00037 virtual TestRequestImpl& fivePointGain() const = 0; 00038 virtual TestRequestImpl& strobeDelay() const = 0; 00039 virtual TestRequestImpl& noiseOccupancy() const = 0; 00040 virtual TestRequestImpl& pipeline() const = 0; 00041 virtual TestRequestImpl& fullBypassBarrel() const = 0; 00042 virtual TestRequestImpl& fullBypassEndcap() const = 0; 00043 virtual TestRequestImpl& quickTrimRange() const = 0; 00044 virtual TestRequestImpl& trimRange() const = 0; 00045 virtual TestRequestImpl& timeWalk() const = 0; 00046 virtual TestRequestImpl& nmask() const = 0; 00047 virtual TestRequestImpl& doubleTriggerNoise() const = 0; 00048 virtual TestRequestImpl& synchTriggerNoise() const = 0; 00049 00050 virtual TestRequestImpl& rxDelay() const = 0; 00051 virtual TestRequestImpl& rxThreshold() const = 0; 00052 virtual TestRequestImpl& rxThresholdBasedOnConfigRegister() const = 0; 00053 virtual TestRequestImpl& txCurrent() const = 0; 00054 protected: 00055 TestLibrary(); 00056 }; 00057 } 00058 } 00059 00060 #endif //TESTLIBRARY_H