Changeset 93 for hvcontrol/src/HVConfig.cc
- Timestamp:
- 07/28/09 09:15:18 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
hvcontrol/src/HVConfig.cc
r90 r93 14 14 15 15 16 HVConfig::HVConfig( FILE* fptr,char *configfile) {16 HVConfig::HVConfig(const char *configfile) { 17 17 18 fLogFile = new char[BUFFER_LENGTH];19 18 fUSBDevice = new char*[MAX_NUM_HVBOARDS]; 20 19 21 fPixMapTable = new char[BUFFER_LENGTH];22 23 20 for (int i=0; i<MAX_NUM_HVBOARDS; i++) { 24 21 fUSBDevice[i] = new char[BUFFER_LENGTH]; 25 22 USBDeviceNumber[i] = 0; 26 27 for (int j=0; j<NUM_CHAINS; j++) {28 for (int k=0; k<2; k++) Coef[i][j][k] = 0.;29 }30 23 } 31 24 32 25 TestMode = false; 33 26 NumHVBoards = 0; 34 FileName = configfile;35 27 fStatusRefreshRate = 1.; 36 28 fTimeOut = 1.; … … 39 31 fHVCalibOffset = -.8; 40 32 fHVCalibSlope = 0.0064; 41 fHVMaxDiff = 1; 42 43 if (configfile != NULL) { 44 if (!ReadHVConfig(fptr, configfile)) { 45 fprintf(fptr, "Error (HVConfig): could not configure HV control\n"); 46 exit(1); 47 } 48 } 49 } 50 51 52 HVConfig::~HVConfig() { 53 54 delete [] fLogFile; delete [] fPixMapTable; 55 for (int i=0; i<MAX_NUM_HVBOARDS; i++) delete [] fUSBDevice[i]; 56 delete [] fUSBDevice; 57 } 58 59 60 int HVConfig::ReadHVConfig(FILE* fptr, char *configfile) { 61 33 fHVMaxDiff = 1; 34 35 // Read configuration file 62 36 FILE *f; 63 37 char str[MAX_COM_SIZE], dev[MAX_COM_SIZE]; … … 65 39 66 40 if ((f = fopen(configfile,"r")) == NULL) { 67 fprintf(fptr,"Could not open configuration file: %s\n", configfile);68 return 0;41 printf("Could not open configuration file: %s\n", configfile); 42 throw; 69 43 } 70 else fprintf(fptr,"Opening configuration file: %s\n", configfile);44 else printf("Opening configuration file: %s\n", configfile); 71 45 72 ReadCard("LogFile", fLogFile, 's',f); 73 ReadCard("PixMapTable",fPixMapTable,'s',f); 46 ReadCard("LogFile", fLogFile, 's',f); 47 ReadCard("PixMapTable", fPixMapTable,'s',f); 48 ReadCard("SlowDirectory", fSlowDir, 's',f); 49 74 50 ReadCard("TestMode", &str, 's',f); 75 51 if (!strcmp(str,"TRUE")) TestMode = true; … … 95 71 96 72 fclose(f); 97 return 1;98 73 } 99 74 100 75 101 int HVConfig::PrintHVConfig(FILE *fptr) { 102 103 fprintf(fptr," \n HV control configuration (%s):\n\n", FileName); 104 fprintf(fptr," Log file: %s\n", fLogFile); 105 fprintf(fptr," Pixel map table: %s\n", fPixMapTable); 106 fprintf(fptr," Test mode: %s\n", TestMode ? "yes" : "no"); 107 fprintf(fptr," %d USB devices:\n", NumHVBoards); 108 109 for (int i=0;i<NumHVBoards;i++) 110 fprintf(fptr," Board%d: %s\n", USBDeviceNumber[i], fUSBDevice[i]); 111 112 fprintf(fptr,"\n"); 113 fprintf(fptr," TimeOut: %.2f s\n", fTimeOut); 114 fprintf(fptr," StatusRefreshRate: %.2f Hz\n",fStatusRefreshRate); 115 fprintf(fptr," CCPort: %d\n", fCCPort); 116 fprintf(fptr," DACMin value: %d\n", DACMin); 117 fprintf(fptr," DACMax value: %d\n", DACMax); 118 fprintf(fptr," HVCalibOffset : %f\n", fHVCalibOffset); 119 fprintf(fptr," HVCalibSlope : %f\n", fHVCalibSlope); 120 fprintf(fptr," HVMaxDiff : %u\n", fHVMaxDiff); 121 122 return 1; 76 HVConfig::~HVConfig() { 77 78 for (int i=0; i<MAX_NUM_HVBOARDS; i++) delete [] fUSBDevice[i]; 79 delete [] fUSBDevice; 123 80 } 81 124 82 125 83 // ReadCard function (original version by F. Goebel)
Note:
See TracChangeset
for help on using the changeset viewer.