NSCL DDAS  1.0
Support for XIA DDAS at the NSCL
 All Classes Namespaces Files Functions Variables Macros Pages
HardwareRegistry.h
1 #ifndef HARDWAREREGISTRY_H
2 #define HARDWAREREGISTRY_H
3 
4 namespace DAQ {
5 namespace DDAS {
6 
31 namespace HardwareRegistry {
32 
37  int s_adcFrequency;
38  int s_adcResolution;
39  int s_hdwrRevision;
40  double s_clockCalibration;
41 };
42 
59 enum HardwareType {
60  RevB_100MHz_12Bit=1,
61  RevC_100MHz_12Bit=2,
62  RevD_100MHz_12Bit=3,
63  RevF_100MHz_14Bit=4,
64  RevF_100MHz_16Bit=5,
65  RevF_250MHz_12Bit=6,
66  RevF_250MHz_14Bit=7,
67  RevF_250MHz_16Bit=8,
68  RevF_500MHz_12Bit=9,
69  RevF_500MHz_14Bit=10,
70  RevF_500MHz_16Bit=11,
71  Unknown=0
72 };
73 
74 void configureHardwareType(int type,
75  const HardwareSpecification& spec);
76 
77 HardwareSpecification& getSpecification(int type);
78 
79 void resetToDefaults();
80 
81 int computeHardwareType(int hdwrVersion, int adcFreq, int adcRes);
82 
83 int createHardwareType(int hdwrVersion, int adcFreq, int adcRes, double clockCalibration);
84 } // end HardwareRegistry namespace
85 } // end DDAS namespace
86 } // end DAQ namespace
87 
90 
91 
92 #endif // HARDWAREREGISTRY_H
Generic hardware specs for hardware types.
Definition: HardwareRegistry.h:36
Definition: functions.h:26
Definition: SystemBooter.cpp:16