fdhwlib  2.0.25
/home/kopmann/git-mirror/fdhwlib/fdhwlib/FE/fe4timing.h
Go to the documentation of this file.
00001 /***************************************************************************
00002     fe4timing.h  -  description
00003 
00004     begin                : Mon Jul 3 2000
00005     copyright            : (C) 2000 by Andreas Kopmann
00006     email                : kopmann@hpe.fzk.de
00007  ***************************************************************************/
00008  
00009 
00010 #ifndef FE4TIMING_H
00011 #define FE4TIMING_H
00012 
00013 #include <FE/FEdef.h>
00014 
00015 #include <hw4/fltdef.h>
00016 #include <hw4/sltdef.h>
00017 
00018 #include <FE/febasetiming.h>
00019 #include <FE/fe4timestamp.h>
00020 
00021 
00022 #include <hw4/subrackauger.h>
00023 
00024 
00056 class FE4timing : public FEbaseTiming {
00057 public:
00058     FE4timing(hw4::SubrackAuger *s);
00059 
00066   void setSecond(unsigned long sec);
00067 
00077   unsigned long setActualTime();
00078 
00085   unsigned long getSecond();
00086 
00093   unsigned long getSubSecond();
00094 
00095   using FEbaseTiming::getActualTime;
00096   
00101   void getActualTime(FE4timeStamp *t);
00102 
00109   void getActualTime(unsigned long *second, unsigned long *subSecond);
00110 
00111   void forceStrobe();
00112 
00113   void setStrobeSource(int source);
00114 
00115   int getStrobeSource();
00116 
00122   int waitForSyncErr();
00123 
00124   void enableSyncErr();
00125 
00126   void disableSyncErr();
00127 
00128   bool isEnabledSyncErr();
00129 
00144   void enableDeadTimeCounter();
00145 
00147   void disableDeadTimeCounter();
00148 
00150   bool isEnabledDeadTimeCounter();
00151 
00153   void resetDeadTimeCounter();
00154 
00156   void getVetoTime(unsigned long *high, unsigned long *low);
00157 
00159   void getDeadTime(unsigned long *high, unsigned long *low);
00160 
00162   void getRunTime(unsigned long *high, unsigned long *low);
00163   
00165   void getVetoTime(unsigned long long *time);
00166 
00168   void getDeadTime(unsigned long long *time);
00169 
00171   void getRunTime(unsigned long long *time);
00172 
00173 private:
00174   hw4::SubrackAuger *s;
00175 
00176 };
00177 
00178 #endif // FE4TIMING_H
00179 
00180