Ignore:
Timestamp:
07/01/09 20:47:49 (15 years ago)
Author:
lstark
Message:
feedback through socket and test mode implemented
File:
1 edited

Legend:

Unmodified
Added
Removed
  • hvcontrol/src/ProcessIO.cc

    r72 r80  
    2424  calib  = new HVCalib(config);
    2525  log     = new Log(config->fLogPath);
    26   hv      = new HV(config->fUSBDevice,config->USBDeviceNumber,stdout);
     26  hv      = new HV(config->fUSBDevice,config->USBDeviceNumber,stdout,config->TestMode);
    2727 
    2828  pm = new PixelMap(config->fPixMapTable);
     
    7575  pthread_mutex_init (&control_mutex, NULL);
    7676  pthread_cond_init  (&control_cond,  NULL);
    77    
     77 
     78  sprintf(str,"**************** End of constructor ProcessIO ************\n");
     79  DoPrompt(str);
     80 
    7881}
    7982
     
    150153      // Wrong type of argument
    151154      else if (!IsNoDigit(status->Param[1]) || !IsNoDigit(status->Param[2]) || status->Param[3][0] || !status->Param[1][0]) {
    152         sprintf(str,"usage: <board> <i>|<i> <j>|<all>\n");
     155        sprintf(str,"ERROR - usage: <board> <i>|<i> <j>|<all>\n");
    153156        DoPrompt(str); 
    154157        return 0;
     
    158161
    159162        if (!IsBoard(atoi(status->Param[1]))) {
    160           sprintf(str,"board #%d does not exist\n", atoi(status->Param[1]));
     163          sprintf(str,"ERROR -board #%d does not exist\n", atoi(status->Param[1]));
    161164          DoPrompt(str);
    162165          return 0;
     
    165168        if (status->Param[2][0])
    166169          if (!IsBoard(atoi(status->Param[2]))) {
    167             sprintf(str,"board #%d does not exist\n", atoi(status->Param[2]));
     170            sprintf(str,"ERROR -board #%d does not exist\n", atoi(status->Param[2]));
    168171            DoPrompt(str);
    169172            return 0;
     
    206209      }
    207210      else if (!IsNoDigit(status->Param[1]) || !status->Param[1][0]) {
    208         sprintf(str,"usage: <chain> <i>|<i> <j>|<all>\n");
     211        sprintf(str,"ERROR -usage: <chain> <i>|<i> <j>|<all>\n");
    209212        DoPrompt(str); 
    210213        return 0;
     
    226229       
    227230        if (atoi(status->Param[1]) < 0 || atoi(status->Param[1]) > 3) {
    228           sprintf(str,"chain #%d does not exist\n", atoi(status->Param[1]));
     231          sprintf(str,"ERROR -chain #%d does not exist\n", atoi(status->Param[1]));
    229232          DoPrompt(str);
    230233        }
     
    232235       
    233236        if ((atoi(status->Param[2]) < 0 || atoi(status->Param[2]) > 3) && (atoi(status->Param[1]) != atoi(status->Param[2]))) {
    234           sprintf(str,"chain #%d does not exist\n", atoi(status->Param[2]));
     237          sprintf(str,"ERROR -chain #%d does not exist\n", atoi(status->Param[2]));
    235238          DoPrompt(str);
    236239        }
     
    297300        allchannels = TRUE;
    298301      else {
    299         DoPrompt("error: wrong input format - usage: hv <channel>|<all> <voltage>\n");
     302        DoPrompt("ERROR - wrong input format - usage: hv <channel>|<all> <voltage>\n");
    300303        return 0;
    301304      }
     
    304307      if (tolower(status->Param[2][0])=='x' && strlen(status->Param[2])>2) {
    305308        if (sPrintHex2Dec(Chop(status->Param[2]+1),&hvoltage)!=0) {
    306           DoPrompt("error: wrong input format - usage: hv <channel>|<all> <voltage>\n");
     309          DoPrompt("ERROR - wrong input format - usage: hv <channel>|<all> <voltage>\n");
    307310          return 0;
    308311        }
     
    311314      else if (tolower(status->Param[2][0])=='b' && strlen(status->Param[2])>2) {
    312315        if (sPrintBin2Dec(Chop(status->Param[2]+1),&hvoltage)!=0) {
    313           DoPrompt("wrong input format - usage: hv <channel>|<all> <voltage>\n");
     316          DoPrompt("ERROR - wrong input format - usage: hv <channel>|<all> <voltage>\n");
    314317          return 0;
    315318        }
     
    322325      // Wrong input format
    323326      else {
    324         DoPrompt("wrong input format - usage: hv <channel>|<all> <voltage>\n");
     327        DoPrompt("ERROR - wrong input format - usage: hv <channel>|<all> <voltage>\n");
    325328        return 0;
    326329      }
     
    328331      // Check limits
    329332      if (channel>31 || channel <0) {
    330         DoPrompt("channel out of range (0...31)!\n");
     333        DoPrompt("ERROR - channel out of range (0...31)!\n");
    331334        return 0;
    332335      }
    333336      else if ((hvoltage>0X3FFF || hvoltage <0)&&config->IsDAC) {
    334         DoPrompt("high voltage out of range (Vmin: 0, Vmax: 16383)!\n");
     337        DoPrompt("ERROR - high voltage out of range (Vmin: 0, Vmax: 16383)!\n");
    335338        return 0;
    336339      }
    337340      else if ((hvoltage>78.0 || hvoltage <0)&&(!(config->IsDAC))) {
    338         DoPrompt("high voltage out of range (Vmin: 0, Vmax: 78.)!\n");
     341        DoPrompt("ERROR - high voltage out of range (Vmin: 0, Vmax: 78.)!\n");
    339342        return 0;
    340343      }
     
    365368                UpdateStatus(i,rbuf);
    366369               
    367                 sprintf(str,"board %d: high voltage of chain %d channel %d set to %d | 0X%.4X | %f V\n",hv->GetHVBoard(i)->GetBoardNumber(),j,channel,hvoltage,hvoltage,calib->DACToHV(hvoltage,hv->GetHVBoard(i)->GetBoardNumber(),j,channel));
     370                sprintf(str,"OK - board %d: high voltage of chain %d channel %d set to %d | 0X%.4X | %f V\n",hv->GetHVBoard(i)->GetBoardNumber(),j,channel,hvoltage,hvoltage,calib->DACToHV(hvoltage,hv->GetHVBoard(i)->GetBoardNumber(),j,channel));
    368371                //              DoPrompt(str);
    369372                if (status->Verbose) {
     
    374377              }
    375378              else {
    376                 sprintf(str,"board %d error: could not set hv - check timeout and try again\n",hv->GetHVBoard(i)->GetBoardNumber());
     379                sprintf(str,"ERROR - board %d error: could not set hv - check timeout and try again\n",hv->GetHVBoard(i)->GetBoardNumber());
    377380                DoPrompt(str);
    378381                errors++;
     
    381384          }
    382385          else {
    383             sprintf(str,"updating board %d chain %d\n",hv->GetHVBoard(i)->GetBoardNumber(),j);
     386            sprintf(str,"OK - updating board %d chain %d\n",hv->GetHVBoard(i)->GetBoardNumber(),j);
    384387            DoPrompt(str);
    385388         
     
    404407                 
    405408                  if (status->Verbose) {
    406                     sprintf(str,"board %d: high voltage of chain %d channel %d set to %d | 0X%.4X | %f V\n",hv->GetHVBoard(i)->GetBoardNumber(),j,channel,hvoltage,hvoltage,calib->DACToHV(hvoltage,hv->GetHVBoard(i)->GetBoardNumber(),j,channel));
     409                    sprintf(str,"OK - board %d: high voltage of chain %d channel %d set to %d | 0X%.4X | %f V\n",hv->GetHVBoard(i)->GetBoardNumber(),j,channel,hvoltage,hvoltage,calib->DACToHV(hvoltage,hv->GetHVBoard(i)->GetBoardNumber(),j,channel));
    407410                    //sprintf(str,"board %d: high voltage of chain %d channel %d set to %d | 0X%.4X\n",hv->GetHVBoard(i)->GetBoardNumber(),j,k,hvoltage,hvoltage);
    408411                    //   DoPrompt(str);
     
    414417               
    415418                else {
    416                   sprintf(str,"board %d error: could not set HV - check timeout and try again\n",hv->GetHVBoard(i)->GetBoardNumber());
     419                  sprintf(str,"ERROR - board %d error: could not set HV - check timeout and try again\n",hv->GetHVBoard(i)->GetBoardNumber());
    417420                  DoPrompt(str);
    418421                  errors++;
     
    429432
    430433      if (errors) {
    431         sprintf(str,"warning %d error(s) => check timeout and try again\n",errors);
     434        sprintf(str,"ERROR - warning %d error(s) => check timeout and try again\n",errors);
    432435        DoPrompt(str);
    433436      }
    434437      else {
    435         sprintf(str,"no error(s)... success!\n");
     438        sprintf(str,"OK - no error(s)... success!\n");
    436439        DoPrompt(str);
    437440      }
     
    439442    }
    440443    else {
    441       sprintf(str,"usage: hv <channel>|<all> <voltage>\n");
     444      sprintf(str,"ERROR - usage: hv <channel>|<all> <voltage>\n");
    442445      DoPrompt(str);
    443446    }
     
    481484      if (tolower(status->Param[2][0])=='x' && strlen(status->Param[2])>2) {
    482485        if (sPrintHex2Dec(Chop(status->Param[2]+1),(unsigned int *)hvdiff)!=0) {
    483           DoPrompt("error: wrong input format - usage: hvdiff <channel>|<all> <hv difference>\n");
     486          DoPrompt("ERROR - wrong input format - usage: hvdiff <channel>|<all> <hv difference>\n");
    484487          return 0;
    485488        }
     
    488491      else if (tolower(status->Param[2][0])=='b' && strlen(status->Param[2])>2) {
    489492        if (sPrintBin2Dec(Chop(status->Param[2]+1),(unsigned int *)hvdiff)!=0) {
    490           DoPrompt("wrong input format - usage: hvdiff <channel>|<all> <hv difference>\n");
     493          DoPrompt("ERROR - wrong input format - usage: hvdiff <channel>|<all> <hv difference>\n");
    491494          return 0;
    492495        }
     
    499502      // Wrong input format
    500503      else {
    501         DoPrompt("wrong input format - usage: hvdiff <channel>|<all> <hv difference>\n");
     504        DoPrompt("ERROR - wrong input format - usage: hvdiff <channel>|<all> <hv difference>\n");
    502505        return 0;
    503506      }
    504507      // Check limits
    505508      if (channel>31 || channel <0) {
    506         DoPrompt("channel out of range (0...31)!\n");
     509        sprintf(str,"ERROR - channel out of range (0...31)!\n");
     510        DoPrompt(str);
    507511        return 0;
    508512      }
    509513      else if (hvdiff>config->DACMax || hvdiff <(-(config->DACMax))) {
    510         sprintf(str,"difference of high voltage [hvdiff:%d] out of range (Vmin: 0.0, Vmax: %d)!\n", hvdiff,config->DACMax);
     514        sprintf(str,"ERROR - difference of high voltage [hvdiff:%d] out of range (Vmin: 0.0, Vmax: %d)!\n", hvdiff,config->DACMax);
    511515        DoPrompt(str);
    512516        return 0;
    513517      }
    514518      else if (hvdiffV>(calib->DACToHV(config->DACMax,0,0,0))|| hvdiffV<-(calib->DACToHV(config->DACMax,0,0,0))) {
    515         sprintf(str,"difference of high voltage [hvdiff:%f] out of range (Vmin: 0.0, Vmax: %f)!\n",hvdiffV,calib->DACToHV(config->DACMax,0,0,0));
    516         DoPrompt(str);
    517         return 0;
    518       }
    519 
    520       sprintf(str,"Error - Test \n");
    521       DoPrompt(str);
    522       if (status->Socket != -1) // Print status string to socket if open
    523         write(status->Socket,str,strlen(str)+1);
    524       sPrintStatus(status,str,0); // Print status only to socket
    525      
    526 
     519        sprintf(str,"ERROR - difference of high voltage [hvdiff:%f] out of range (Vmin: 0.0, Vmax: %f)!\n",hvdiffV,calib->DACToHV(config->DACMax,0,0,0));
     520        DoPrompt(str);
     521        return 0;
     522      }
     523     
    527524
    528525
     
    556553          UpdateStatus(board,rbuf);
    557554          if (k==(abs((int)(hvdiff/config->fHVMaxDiff)))){
    558             sprintf(str,"board %d: high voltage of chain %d channel %d set to %d | 0X%.4X | %f V\n",hv->GetHVBoard(board)->GetBoardNumber(),chain,channel,hvoltage,hvoltage,calib->DACToHV(hvoltage,hv->GetHVBoard(board)->GetBoardNumber(),chain,channel));
     555            sprintf(str,"OK - board %d: high voltage of chain %d channel %d set to %d | 0X%.4X | %f V\n",hv->GetHVBoard(board)->GetBoardNumber(),chain,channel,hvoltage,hvoltage,calib->DACToHV(hvoltage,hv->GetHVBoard(board)->GetBoardNumber(),chain,channel));
    559556            //sprintf(str,"board %d: high voltage of chain %d channel %d set to %d | 0X%.4X\n",hv->GetHVBoard(board)->GetBoardNumber(),chain,channel,hvoltage,hvoltage);
    560557            DoPrompt(str);
     
    563560        }
    564561        else {
    565           sprintf(str,"board %d chain %d channel %d error: could not set hv - check timeout and try again\n",hv->GetHVBoard(board)->GetBoardNumber(), chain, channel);
     562          sprintf(str,"ERROR - board %d chain %d channel %d error: could not set hv - check timeout and try again\n",hv->GetHVBoard(board)->GetBoardNumber(), chain, channel);
    566563          DoPrompt(str);
    567564          errors++;
     
    577574
    578575      if (errors) {
    579         sprintf(str,"warning %d error(s)\n",errors);
     576        sprintf(str,"ERROR - warning %d error(s)\n",errors);
    580577        DoPrompt(str);
    581578      }
    582579      else {
    583         sprintf(str,"no error(s)... success!\n");
     580        sprintf(str,"OK - no error(s)... success!\n");
    584581        DoPrompt(str);
    585582      }
    586583    }
    587584    else {
    588       sprintf(str,"usage: hvdiff <PXL id> <hv difference>\n");
     585      sprintf(str,"ERROR - usage: hvdiff <PXL id> <hv difference>\n");
    589586      DoPrompt(str);
    590587    }
     
    600597  else if (Match(status->Param[0], "list")) {
    601598   
    602     sprintf(str,"%d HV board(s) active:\n",hv->GetNumberOfBoards());
     599    sprintf(str,"OK - %d HV board(s) active:\n",hv->GetNumberOfBoards());
    603600    DoPrompt(str);
    604601
    605602    for (int i=0;i<hv->GetNumberOfBoards();i++) {
    606       sprintf(str,"board %d (%s)\n",(hv->GetHVBoard(i))->GetBoardNumber(),(hv->GetHVBoard(i))->GetSerial());
     603      sprintf(str,"OK - board %d (%s)\n",(hv->GetHVBoard(i))->GetBoardNumber(),(hv->GetHVBoard(i))->GetSerial());
    607604      DoPrompt(str);
    608605    }
     
    634631       
    635632        if (status->Verbose) {
    636           sprintf(str,"file \"%s\" opened\n",Chop(status->Param[1]));
     633          sprintf(str,"OK - file \"%s\" opened\n",Chop(status->Param[1]));
    637634          DoPrompt(str);
    638635        }
     
    651648                board = j;
    652649               
    653                 sprintf(str,"found HV settings for board %d (%s)\n",hv->GetHVBoard(board)->GetBoardNumber(),Chop(param[1]));
     650                sprintf(str,"OK - found HV settings for board %d (%s)\n",hv->GetHVBoard(board)->GetBoardNumber(),Chop(param[1]));
    654651                DoPrompt(str);
    655652               
     
    666663
    667664                    if (!((nrows)%4)) {
    668                       sprintf(str,"updating board %d chain %d\n",hv->GetHVBoard(board)->GetBoardNumber(),chain);
     665                      sprintf(str,"OK - updating board %d chain %d\n",hv->GetHVBoard(board)->GetBoardNumber(),chain);
    669666                      DoPrompt(str);
    670667                    }
     
    683680                       
    684681                        if (status->Verbose) {
    685                           sprintf(str,"board %d: high voltage of chain %d channel %d set to %d | 0X%.4X\n",
     682                          sprintf(str,"OK - board %d: high voltage of chain %d channel %d set to %d | 0X%.4X\n",
    686683                                  hv->GetHVBoard(board)->GetBoardNumber(),chain,channel,hvoltage,hvoltage);
    687684                          DoPrompt(str);
     
    691688                      }
    692689                      else {
    693                         sprintf(str,"board %d error: could not set HV - check timeout and try again\n",hv->GetHVBoard(board)->GetBoardNumber());
     690                        sprintf(str,"ERROR - board %d error: could not set HV - check timeout and try again\n",hv->GetHVBoard(board)->GetBoardNumber());
    694691                        DoPrompt(str);
    695692                        errors++;
     
    709706       
    710707        if (fclose (file)) {
    711           sprintf(str,"error: could not close file \"%s\"\n",Chop(status->Param[1]));
     708          sprintf(str,"ERROR - could not close file \"%s\"\n",Chop(status->Param[1]));
    712709          DoPrompt(str);
    713710        }
    714711        else {
    715712          if (status->Verbose) {
    716             sprintf(str,"file \"%s\" closed\n",Chop(status->Param[1]));
     713            sprintf(str,"OK - file \"%s\" closed\n",Chop(status->Param[1]));
    717714            DoPrompt(str);
    718715          }
     
    720717
    721718        if (nboards!=hv->GetNumberOfBoards()) {
    722           sprintf(str,"warning: could not load HV settings for all connected HV boards\n");
     719          sprintf(str,"ERROR - warning: could not load HV settings for all connected HV boards\n");
    723720          DoPrompt(str);
    724721        }
    725722        else {
    726           sprintf(str,"success: read HV settings for all connected HV boards\n");
     723          sprintf(str,"OK - success: read HV settings for all connected HV boards\n");
    727724          DoPrompt(str);
    728725        }
    729726
    730727        if (errors) {
    731           sprintf(str,"warning %d error(s) => check timeout and try again\n",errors);
     728          sprintf(str,"ERROR - warning %d error(s) => check timeout and try again\n",errors);
    732729          DoPrompt(str);
    733730        }
    734731        else {
    735           sprintf(str,"no error(s)... success!\n");
     732          sprintf(str,"OK - no error(s)... success!\n");
    736733          DoPrompt(str);
    737734        }
     
    739736      }
    740737      else {
    741         sprintf(str,"error: could not open file \"%s\"\n",Chop(status->Param[1]));
     738        sprintf(str,"ERROR - could not open file \"%s\"\n",Chop(status->Param[1]));
    742739        DoPrompt(str);
    743740      }
     
    745742    }
    746743    else
    747       DoPrompt("usage: load <file>\n");
     744      DoPrompt("ERROR - usage: load <file>\n");
    748745
    749746    StartMonitor();
     
    759756    if (Match(status->Param[1], "on") && status->Param[1][0]) {
    760757      status->Log = TRUE;
    761       sprintf(str,"logging enabled\n");
     758      sprintf(str,"OK - logging enabled\n");
    762759      DoPrompt(str);
    763760    }
     
    765762    else if (Match(status->Param[1], "off") && status->Param[1][0]) {
    766763      status->Log = FALSE;
    767       sprintf(str,"logging disabled\n");
     764      sprintf(str,"OK -logging disabled\n");
    768765      DoPrompt(str);
    769766    }
    770767   
    771768    else
    772       DoPrompt("usage: log <on>|<off>\n");
     769      DoPrompt("ERROR - usage: log <on>|<off>\n");
    773770 
    774771    return 0;
     
    785782
    786783      if (!IsNoDigit(status->Param[1])) {
    787         DoPrompt("wrong input format - usage: rate <rate>\n");
     784        DoPrompt("ERROR - wrong input format - usage: rate <rate>\n");
    788785        return 0;
    789786      }
    790787      // Check limits
    791788      else if (atof(status->Param[1]) < MIN_RATE || atof(status->Param[1]) > MAX_RATE) {
    792         sprintf(str,"refresh rate out of range (min: %.2f Hz, max: %.2f Hz)!\n",MIN_RATE,MAX_RATE);
     789        sprintf(str,"ERROR - refresh rate out of range (min: %.2f Hz, max: %.2f Hz)!\n",MIN_RATE,MAX_RATE);
    793790        DoPrompt(str);
    794791        return 0;
     
    797794        StopMonitor();
    798795        status->fStatusRefreshRate=atof(status->Param[1]);
    799         sprintf(str,"status refresh rate set to %.2f Hz\n",status->fStatusRefreshRate);
     796        sprintf(str,"OK - status refresh rate set to %.2f Hz\n",status->fStatusRefreshRate);
    800797        DoPrompt(str);
    801798      }
     
    805802    }
    806803    else {
    807       sprintf(str,"usage: rate <rate>\n");
     804      sprintf(str,"ERROR - usage: rate <rate>\n");
    808805      DoPrompt(str);
    809806    }
     
    859856  else if (Match(status->Param[0], "root")) {
    860857   
    861     sprintf(str,"starting ROOT... type '.q' to return\n");
     858    sprintf(str,"OK - starting ROOT... type '.q' to return\n");
    862859    DoPrompt(str);
    863860    system ("root");
     
    874871     
    875872      if (SaveHVSettings(Chop(status->Param[1]))) {
    876         sprintf(str,"HV settings written to \"%s\"\n",Chop(status->Param[1]));
     873        sprintf(str,"OK - HV settings written to \"%s\"\n",Chop(status->Param[1]));
    877874        DoPrompt(str);
    878875      }
     
    889886      time_now = localtime(&time_now_secs);
    890887     
    891       sprintf(buffer,"hvsettings/HV_%04d-%02d-%02d_%02d-%02d-%02d.txt",
     888      sprintf(buffer,"OK - hvsettings/HV_%04d-%02d-%02d_%02d-%02d-%02d.txt",
    892889              1900 + time_now->tm_year,
    893890              1 + time_now->tm_mon,
     
    901898     
    902899      if (SaveHVSettings(buffer)) {
    903         sprintf(str,"HV settings successfully written to \"%s\"\n",buffer);
     900        sprintf(str,"OK - HV settings successfully written to \"%s\"\n",buffer);
    904901        DoPrompt(str);
    905902      }
     
    918915   
    919916    if (status->state==active) {
    920       sprintf(str,"status monitoring is already active\n");
     917      sprintf(str,"OK - status monitoring is already active\n");
    921918      DoPrompt(str);
    922919      return 0;
     
    925922    StartMonitor();
    926923
    927     sprintf(str,"status monitoring activated\n");
     924    sprintf(str,"OK - status monitoring activated\n");
    928925    DoPrompt(str);
    929926
     
    953950   
    954951    if (status->state!=active) {
    955       sprintf(str,"status monitoring is already deactivated\n");
     952      sprintf(str,"OK - status monitoring is already deactivated\n");
    956953      DoPrompt(str);
    957954      return 0;
     
    960957    StopMonitor();
    961958   
    962     sprintf(str,"warning: status monitoring deactivated\n");
     959    sprintf(str,"ERROR - warning: status monitoring deactivated\n");
    963960    DoPrompt(str);
    964961
     
    11371134
    11381135      if (!IsNoDigit(status->Param[1])) {
    1139         DoPrompt("wrong input format - usage: timeout <time>\n");
     1136        DoPrompt("ERROR - wrong input format - usage: timeout <time>\n");
    11401137        return 0;
    11411138      }
    11421139      // Check limits
    11431140      else if (atof(status->Param[1]) < MIN_TIMEOUT || atof(status->Param[1]) > MAX_TIMEOUT) {
    1144         sprintf(str,"timeout out of range (min: %.2f s, max: %.2f s)!\n",MIN_TIMEOUT,MAX_TIMEOUT);
     1141        sprintf(str,"ERROR -timeout out of range (min: %.2f s, max: %.2f s)!\n",MIN_TIMEOUT,MAX_TIMEOUT);
    11451142        DoPrompt(str);
    11461143        return 0;
     
    11511148          (hv->GetHVBoard(i))->SetTimeOut((float)atof(status->Param[1]));
    11521149        status->fTimeOut = atof(status->Param[1]);     
    1153         sprintf(str,"timeout set to %.2f s\n",status->fTimeOut);
     1150        sprintf(str,"OK - timeout set to %.2f s\n",status->fTimeOut);
    11541151
    11551152        DoPrompt(str);
     
    11601157    }
    11611158    else {
    1162       sprintf(str,"usage: timeout <time>\n");
     1159      sprintf(str,"ERROR - usage: timeout <time>\n");
    11631160      DoPrompt(str);
    11641161    }
     
    11731170    double difftime = GetDiffTime(&StartTime);
    11741171
    1175     sprintf(str,"%d:%02d:%02d\n",(int)difftime/SECONDS_HOUR,((int)difftime/SECONDS_MINUTE)%SECONDS_MINUTE,(int)difftime%SECONDS_MINUTE);
     1172    sprintf(str,"OK - %d:%02d:%02d\n",(int)difftime/SECONDS_HOUR,((int)difftime/SECONDS_MINUTE)%SECONDS_MINUTE,(int)difftime%SECONDS_MINUTE);
    11761173    DoPrompt(str);
    11771174
     
    11851182    if (Match(status->Param[1], "on") && status->Param[1][0]) {
    11861183      if (status->Verbose == TRUE) {
    1187         sprintf(str,"verbosity is already enabled\n");
     1184        sprintf(str,"OK - verbosity is already enabled\n");
    11881185        DoPrompt(str);
    11891186      }
    11901187      else {
    11911188        status->Verbose = TRUE;
    1192         sprintf(str,"verbosity enabled\n");
     1189        sprintf(str,"OK - verbosity enabled\n");
    11931190        DoPrompt(str);
    11941191      }
     
    11971194    else if (Match(status->Param[1], "off") && status->Param[1][0]) {
    11981195      if (status->Verbose == FALSE) {
    1199         sprintf(str,"verbosity is already disabled\n");
     1196        sprintf(str,"OK - verbosity is already disabled\n");
    12001197        DoPrompt(str);
    12011198      }
    12021199      else {
    12031200        status->Verbose = FALSE;
    1204         sprintf(str,"verbosity disabled\n");
     1201        sprintf(str,"OK - verbosity disabled\n");
    12051202        DoPrompt(str);
    12061203      }
     
    12081205   
    12091206    else
    1210       DoPrompt("usage: verbose <on>|<off>\n");
     1207      DoPrompt("ERROR - usage: verbose <on>|<off>\n");
    12111208 
    12121209    return 0;
     
    12271224      if (tolower(status->Param[1][0])=='x' && strlen(status->Param[1])>2) {
    12281225        if (sPrintHex2Dec(Chop(status->Param[1]+1),&voltage)!=0) {
    1229             DoPrompt("error: wrong input format - usage: vref <voltage>\n");
     1226            DoPrompt("ERROR - wrong input format - usage: vref <voltage>\n");
    12301227            return 0;
    12311228        }
     
    12341231      else if (tolower(status->Param[1][0])=='b' && strlen(status->Param[1])>2) {
    12351232        if (sPrintBin2Dec(Chop(status->Param[1]+1),&voltage)!=0) {
    1236           DoPrompt("wrong input format - usage: vref <voltage>\n");
     1233          DoPrompt("ERROR - wrong input format - usage: vref <voltage>\n");
    12371234          return 0;
    12381235        }
     
    12431240      // Wrong input format
    12441241      else {
    1245         DoPrompt("wrong input format - usage: vref <voltage>\n");
     1242        DoPrompt("ERROR - wrong input format - usage: vref <voltage>\n");
    12461243        return 0;
    12471244      }
     
    12491246      // Check limits
    12501247      if (voltage>0X3FFF || voltage <0) {
    1251         DoPrompt("reference voltage out of range (Vmin: 0, Vmax: 16383)!\n");
     1248        DoPrompt("ERROR - reference voltage out of range (Vmin: 0, Vmax: 16383)!\n");
    12521249        return 0;
    12531250      }
     
    12591256        for (int j=status->FirstChain;j<=status->LastChain;j++) {
    12601257          if (((hv->GetHVBoard(i))->SetVRef(stdout,j,voltage,rbuf,status->Verbose)==1)) {
    1261             sprintf(str,"board %d: reference voltage of chain %d set to %d | 0X%.4X\n",hv->GetHVBoard(i)->GetBoardNumber(),j,voltage,voltage);
     1258            sprintf(str,"OK - board %d: reference voltage of chain %d set to %d | 0X%.4X\n",hv->GetHVBoard(i)->GetBoardNumber(),j,voltage,voltage);
    12621259            status->VRef[i][j]=voltage;
    12631260            DoPrompt(str);
     
    12661263            DoPrompt(str);
    12671264          } else {
    1268             sprintf(str,"board %d error: could not set vref - check timeout and try again\n",hv->GetHVBoard(i)->GetBoardNumber());
     1265            sprintf(str,"ERROR - board %d error: could not set vref - check timeout and try again\n",hv->GetHVBoard(i)->GetBoardNumber());
    12691266            DoPrompt(str);
    12701267          }
     
    12741271    }
    12751272    else {
    1276       sprintf(str,"usage: vref <voltage>\n");
     1273      sprintf(str,"ERROR - usage: vref <voltage>\n");
    12771274      DoPrompt(str);
    12781275    }
     
    13611358   
    13621359    if (strchr(status->Param[0],'\n') == 0)
    1363       sprintf(str,"unknown command: %s\n",status->Param[0]);
     1360      sprintf(str,"ERROR - unknown command: %s\n",status->Param[0]);
    13641361    else
    1365       sprintf(str,"unknown command: %s",status->Param[0]);
     1362      sprintf(str,"ERROR - unknown command: %s",status->Param[0]);
    13661363   
    13671364    DoPrompt(str);
     
    13851382  timeinfo = localtime(&rawtime); // Get local time
    13861383  fflush(stdout);
    1387   sprintf(str,"current date/time is: %s",asctime(timeinfo));
     1384  sprintf(str,"OK - current date/time is: %s",asctime(timeinfo));
    13881385  DoPrompt(str);
    13891386
     
    13911388
    13921389void ProcessIO::DoPrompt(char* str) {
    1393  
     1390  if (str!=NULL) {
     1391    if (status->Socket != -1) // Print status string to socket if open
     1392      write(status->Socket,str,strlen(str)+1);
     1393  }
     1394  else {
     1395    if (status->Socket != -1) // Print status string to socket if open
     1396      write(status->Socket,"OK\n",3);
     1397  }
    13941398  if (str!=NULL) {
    13951399    if (status->NumHVBoards == 0) {
     
    14701474     }
    14711475  }
    1472 
    1473  
    14741476}
    14751477
     
    15921594
    15931595  if (status->NumHVBoards==0)
    1594     DoPrompt("no HV boards available!\n");
     1596    DoPrompt("ERROR - no HV boards available!\n");
    15951597
    15961598  return status->NumHVBoards;
     
    16031605
    16041606  if (hv->GetNumberOfBoards())
    1605     printf("Initialization:\n");
     1607    printf("OK - Initialization:\n");
    16061608
    16071609  for (int i=0;i<hv->GetNumberOfBoards();i++) {
    1608     printf(" HV board %d (%s):\n",hv->GetHVBoard(i)->GetBoardNumber(),hv->GetHVBoard(i)->GetSerial());
     1610    printf("OK - HV board %d (%s):\n",hv->GetHVBoard(i)->GetBoardNumber(),hv->GetHVBoard(i)->GetSerial());
    16091611    nb+=hv->GetHVBoard(i)->Init(status->Verbose);
    16101612  }
     
    16621664
    16631665    if ((hv->GetHVBoard(i))->GetStatus(stdout,rbuf,FALSE)!=1) {
    1664       sprintf(str,"board %d error: could not read status - check timeout and status refresh rate...",hv->GetHVBoard(i)->GetBoardNumber());
     1666      sprintf(str,"ERROR - board %d error: could not read status - check timeout and status refresh rate...",hv->GetHVBoard(i)->GetBoardNumber());
    16651667      PrintMessage(str);     
    16661668    }
     
    16691671   
    16701672    if (status->MR[i]) {
    1671       sprintf(str,"warning: manual reset of board %d!",hv->GetHVBoard(i)->GetBoardNumber());
     1673      sprintf(str,"ERROR - warning: manual reset of board %d!",hv->GetHVBoard(i)->GetBoardNumber());
    16721674      PrintMessage(str);     
    16731675      StopMonitor();
     
    16781680   
    16791681    if (!status->isok[i]) {
    1680       sprintf(str,"error: wrap counter mismatch board %d (%d,%d)!",hv->GetHVBoard(i)->GetBoardNumber(),status->WC[0][i],status->WC[1][i]);
     1682      sprintf(str,"ERROR - wrap counter mismatch board %d (%d,%d)!",hv->GetHVBoard(i)->GetBoardNumber(),status->WC[0][i],status->WC[1][i]);
    16811683      PrintMessage(str);     
    16821684    }
     
    16841686    for (int j=0;j<MAX_NUM_CHAINS;j++)
    16851687      if (status->OC[i][j]) {
    1686         sprintf(str,"warning: overcurrent in chain %d of board %d!",j,hv->GetHVBoard(i)->GetBoardNumber());
     1688        sprintf(str,"ERROR - warning: overcurrent in chain %d of board %d!",j,hv->GetHVBoard(i)->GetBoardNumber());
    16871689        PrintMessage(str);     
    16881690        ResetBoard(i);
     
    16971699  for (int i=status->FirstBoard;i<=status->LastBoard;i++) {
    16981700    if ((hv->GetHVBoard(i))->Reset(stdout,rbuf,status->Verbose)==1) {
    1699       sprintf(str,"software reset done board %d\n",hv->GetHVBoard(i)->GetBoardNumber());
     1701      sprintf(str,"OK - software reset done board %d\n",hv->GetHVBoard(i)->GetBoardNumber());
    17001702      DoPrompt(str);
    17011703      UpdateStatus(i,rbuf);
     
    17041706    }
    17051707    else {
    1706       sprintf(str,"board %d error: could not reset - check timeout and try again\n",hv->GetHVBoard(i)->GetBoardNumber());
     1708      sprintf(str,"ERROR - board %d error: could not reset - check timeout and try again\n",hv->GetHVBoard(i)->GetBoardNumber());
    17071709        DoPrompt(str);
    17081710    }   
     
    17161718  for (int i=0;i<hv->GetNumberOfBoards();i++) {
    17171719    if ((hv->GetHVBoard(i))->Reset(stdout,rbuf,status->Verbose)==1) {
    1718       sprintf(str,"software reset done board %d\n",hv->GetHVBoard(i)->GetBoardNumber());
     1720      sprintf(str,"OK - software reset done board %d\n",hv->GetHVBoard(i)->GetBoardNumber());
    17191721      DoPrompt(str);
    17201722      UpdateStatus(i,rbuf);
     
    17231725    }
    17241726    else {
    1725       sprintf(str,"board %d error: could not reset - check timeout and try again\n",hv->GetHVBoard(i)->GetBoardNumber());
     1727      sprintf(str,"ERROR - board %d error: could not reset - check timeout and try again\n",hv->GetHVBoard(i)->GetBoardNumber());
    17261728      DoPrompt(str);
    17271729    }   
     
    17341736   
    17351737  if ((hv->GetHVBoard(i))->Reset(stdout,rbuf,status->Verbose)==1) {
    1736     sprintf(str,"software reset done board %d",hv->GetHVBoard(i)->GetBoardNumber());
     1738    sprintf(str,"OK - software reset done board %d",hv->GetHVBoard(i)->GetBoardNumber());
    17371739    PrintMessage(str);
    17381740    UpdateStatus(i,rbuf);
     
    17411743  }
    17421744  else {
    1743     sprintf(str,"board %d error: could not reset - check timeout and try again",hv->GetHVBoard(i)->GetBoardNumber());
     1745    sprintf(str,"ERROR - board %d error: could not reset - check timeout and try again",hv->GetHVBoard(i)->GetBoardNumber());
    17441746    PrintMessage(str);
    17451747  }   
     
    17611763
    17621764  if ((fptr = fopen(filename,"w")) == NULL) {
    1763     sprintf(str,"error: could not open file \"%s\"\n", filename);
     1765    sprintf(str,"ERROR - could not open file \"%s\"\n", filename);
    17641766    return 0;
    17651767  }
Note: See TracChangeset for help on using the changeset viewer.