Main Page   Modules   Namespace List   Class Hierarchy   Data Structures   File List   Namespace Members   Data Fields   Related Pages  

SctApiImpl.h

00001 // File: TApi.h
00002 
00003 #ifndef SCTAPI_SCTAPIIMPL_H
00004 #define SCTAPI_SCTAPIIMPL_H
00005 
00006 // Need complete types for public inheritence
00007 #include "SctApi.h"
00008 
00009 namespace SctApi {
00013 class TriggerImpl : public ::SctApi::Trigger {
00014   TriggerImpl &operator=(const TriggerImpl &);
00015  public:
00017   TriggerImpl();
00018 
00019   TriggerImpl(const TriggerImpl &);
00020 
00022   virtual ~TriggerImpl();
00023 
00024   void singleL1A();
00025   void calL1A(short unsigned int delay);
00026   void pulseL1A(short unsigned int delay);
00027   void softL1A(short unsigned int delay);
00028   void softCalL1A(short unsigned int delay, short unsigned int delay2);
00029   void softPulseL1A(short unsigned int delay, short unsigned int delay2);
00030   void bcL1A(short unsigned int delay);
00031   void bcCalL1A(short unsigned int delay, short unsigned int delay2);
00032   void bcPulseL1A(short unsigned int delay, short unsigned int delay2);
00033 
00034   void setCommIncr(unsigned short command, unsigned short incr);
00035   void getCommIncr(unsigned short &command, unsigned short &incr) const;
00036 
00037   const RODTriggers getRODTriggers() const;
00038 
00039   void copy(const ::SctApi::Trigger &trig);
00040 
00041   void print() const;
00042 private:
00043 //   /// Command values (max 6)
00044 //   TArrayS trigCommand;
00045 
00046 //   /// Data values (max 6)
00047 //   TArrayI trigData;
00048 
00049   RODTriggers trigSequence;
00050 
00052   int incCmd;
00053 
00055   int incData;
00056 };
00057 
00063 class ScanDefImpl : public ::SctApi::Scan {
00064   ScanDefImpl &operator=(const ScanDefImpl &);
00065 
00066  public:
00068   ScanDefImpl();
00069 
00070   ScanDefImpl(const ScanDefImpl &);
00071 
00073   virtual ~ScanDefImpl();
00074 
00075 //   /// Print the scan
00076 //   void print() const;
00077 
00079   void configure(UINT16 type, FLOAT32 start, FLOAT32 stop, FLOAT32 step);
00080 
00082   void configure2(UINT16 type, FLOAT32 start, FLOAT32 stop, FLOAT32 step);
00083 
00084   const ::SctApi::Trigger *getTrigger1() const;
00085   const ::SctApi::Trigger *getTrigger2() const;
00086 
00087   ::SctApi::Trigger *getTrigger1();
00088   ::SctApi::Trigger *getTrigger2();
00089 
00090   void setTrigger1(::SctApi::Trigger *trigger);
00091   void setTrigger2(::SctApi::Trigger *trigger);
00092 
00093   void setScanVariable1(unsigned short var);
00094   void setScanVariable2(unsigned short var);
00095 
00096   unsigned short getScanVariable1() const;
00097   unsigned short getScanVariable2() const;
00098 
00099   void setNTrigs(unsigned long nTrigs);
00100   unsigned short getNTrigs() const;
00101 
00102   const ScanPoints getScanPoints1() const;
00103   const ScanPoints getScanPoints2() const;
00104   void setScanPoints1(const ScanPoints &scans);
00105   void setScanPoints2(const ScanPoints &scans);
00106 
00107   int getOption(enum ScanOptions) const;
00108   void setOption(enum ScanOptions, int option);
00109 
00110   void copy(const ::SctApi::Scan &scan);
00111 
00112   void print() const;
00113 
00114   void setScanNumber(unsigned int scan);
00115   unsigned int getScanNumber() const;
00116   void setRunNumber(unsigned int scan);
00117   unsigned int getRunNumber() const;
00118 
00119   std::list<std::string> getModuleList(unsigned int group) const;
00120   void setModuleList(unsigned int group, std::list<std::string> newList);
00121   unsigned int getNGroups() const;
00122   void setNGroups(unsigned int val);
00123 private:
00125   long trigsPerBurst;
00126 
00128   ScanPoints scanPoints;
00129 
00131   ScanPoints scanPoints2;
00132 
00134   int scanVariable;
00135 
00137   int scanVariable2;
00138 
00140   TriggerImpl *trigSequence;
00141 
00143   TriggerImpl *trigSequence2;
00144 
00146   int format;
00147 
00149   int full;
00150 
00152   int bits32;
00153 
00155   int loopCalLine;
00156 
00158   int distSlave;
00159 
00161   int debug;
00162 
00163   unsigned int scanNumber;
00164   unsigned int runNumber;
00165 
00166   std::vector<std::list<std::string> > groupLists;
00167   unsigned int m_maxGroup;
00168 };
00169 }
00170 
00171 #endif

Generated on Mon Dec 8 18:04:01 2003 for SCT DAQ/DCS Software by doxygen1.3-rc3