ScanRequest.h

00001 #ifndef SCTCALIBRATIONCONTROLLER_SCANREQUEST_H
00002 #define SCTCALIBRATIONCONTROLLER_SCANREQUEST_H
00003 
00004 #include "CalibrationController.hh"
00005 #include <ipc/object.h>
00006 #include <memory>
00007 #include <string>
00008 #include <vector>
00009 #include "boost/shared_ptr.hpp"
00010 
00011 using std::vector;
00012 using std::auto_ptr;
00013 using std::string;
00014 
00015 namespace SctCalibrationController {
00016 namespace Ipc {
00017     
00018 class CalibrationController;
00019     
00025 class ScanRequest {
00026 public:     
00027     virtual CORBA::Boolean isRawNice()=0;
00028     virtual CORBA::Boolean configureModulesNice()=0;
00029     virtual long delayNice()=0;
00030     virtual void setScanNice(Sct_SctApi::Scan_ptr s)=0;
00031     virtual CORBA::Boolean clockByTwoNice()=0;
00032     virtual void setClockByTwoNice(CORBA::Boolean value)=0;
00033     virtual void setConfigureModulesNice(CORBA::Boolean value)=0;
00034     virtual long widthNice()=0;
00035     virtual void setWidthNice(long value)=0;
00036     virtual Sct_SctApi::Scan_ptr getScanNice()=0;
00037 };
00038  
00039  
00040  class MinimalScanRequest : public virtual ScanRequest {
00041  protected:
00042    MinimalScanRequest();
00043    virtual ~MinimalScanRequest() {};
00044  public:
00045    virtual CORBA::Boolean isRawNice();
00046    virtual CORBA::Boolean configureModulesNice();
00047    virtual CORBA::Boolean clockByTwoNice();
00048    virtual void setClockByTwoNice(CORBA::Boolean value);
00049     virtual void setConfigureModulesNice(CORBA::Boolean value);
00050    virtual CORBA::Long widthNice();
00051    virtual void setWidthNice(CORBA::Long width);
00052    virtual CORBA::Long delayNice();
00053    virtual void setScanNice(Sct_SctApi::Scan_ptr s);
00054    virtual Sct_SctApi::Scan_ptr getScanNice();
00055  protected:
00056    CORBA::Boolean m_clockByTwo;
00057    CORBA::Long m_width;
00058    Sct_SctApi::Scan_var m_scan;  
00059    CORBA::Boolean m_configureModules;
00060  };
00061 
00062 
00066 class ScanRequestImpl : 
00067   public IPCObject<POA_Sct_CalibrationController::ScanRequest>,
00068   protected MinimalScanRequest {
00069 public:
00070      ScanRequestImpl();
00071 
00072     virtual CORBA::Boolean isRawCorba();
00073     virtual CORBA::Boolean configureModulesCorba();
00074     virtual void setConfigureModulesCorba(CORBA::Boolean value);
00075     virtual CORBA::Boolean clockByTwoCorba();
00076     virtual CORBA::Long delayCorba();
00077     virtual Sct_SctApi::Scan_ptr getScanCorba ();
00078     virtual void setScanCorba (Sct_SctApi::Scan_ptr scan);
00079     virtual void setClockByTwoCorba (CORBA::Boolean value);
00080     virtual CORBA::Long widthCorba();
00081     virtual void setWidthCorba(CORBA::Long width);
00082 };
00083 
00084 }
00085 }
00086 #endif //SCTCALIBRATIONCONTROLLER_SCANREQUEST_H

Generated on Mon Feb 6 14:01:27 2006 for SCT DAQ/DCS Software - C++ by  doxygen 1.4.6