LocalUtils.h

00001 #ifndef SCTAPIIPC_LOCALUTILS_H
00002 #define SCTAPIIPC_LOCALUTILS_H
00003 
00004 static Sct_SctApi::SctApiException myRaise( ::SctApi::SctApiException &s);
00005 static inline SctApi::BankType myTranslateBank(Sct_SctApi::BankType bank);
00006 static inline SctApi::RunType myTranslateRun(Sct_SctApi::RunType mode);
00007 
00008 Sct_SctApi::SctApiException myRaise( ::SctApi::SctApiException &c) 
00009 {
00010   cout << "Raising exception " << c.what() << endl;
00011   return Sct_SctApi::SctApiException(c.what());
00012 }
00013 
00014 
00015 SctApi::BankType myTranslateBank(Sct_SctApi::BankType bank) {
00016 
00017   SctApi::BankType result;
00018   switch(bank) {
00019   case Sct_SctApi::PHYSICS_CONFIG:
00020     result = ::SctApi::SCTAPI_BANK_PHYSICS;
00021     break;
00022   case Sct_SctApi::CALIBRATION_CONFIG:
00023     result = SctApi::SCTAPI_BANK_CALIBRATION;
00024     break;
00025   case Sct_SctApi::SCAN_CONFIG:
00026     result = SctApi::SCTAPI_BANK_SCAN;
00027     break;
00028   default:
00029     result = SctApi::SCTAPI_BANK_PHYSICS;
00030     break;
00031   }
00032   return result;
00033 }
00034 
00035 static inline
00036 std::list<SctApi::BankType> myTranslateBanks(const Sct_SctApi::BankList& banks){
00037   std::list<SctApi::BankType> copied;
00038   for (unsigned i=0; i<banks.length(); ++i){
00039     copied.push_back(myTranslateBank(banks[i]));
00040   }
00041   return copied;
00042 }
00043 
00044 SctApi::RunType myTranslateRun(Sct_SctApi::RunType mode) {
00045   SctApi::RunType result;
00046   switch(mode) {
00047   case Sct_SctApi::PHYSICS_RUN_TYPE:
00048     result = ::SctApi::SCTAPI_RUN_PHYSICS;
00049     break;
00050   case Sct_SctApi::CALIBRATION_RUN_TYPE:
00051     result = SctApi::SCTAPI_RUN_CALIBRATION;
00052     break;
00053   }
00054   return result;
00055 }
00056 
00057 SctApi::EventFormatType myTranslateEventFormat(Sct_SctApi::EventFormatType format) {
00058   SctApi::EventFormatType result;
00059   switch(format) {
00060   case Sct_SctApi::NORMAL_EVENT_FORMAT:
00061     result = ::SctApi::SCTAPI_EVENT_FORMAT_NORMAL;
00062     break;
00063   case Sct_SctApi::EXPANDED_EVENT_FORMAT:
00064     result = SctApi::SCTAPI_EVENT_FORMAT_EXPANDED;
00065     break;
00066   case Sct_SctApi::RAW_EVENT_FORMAT:
00067     result = SctApi::SCTAPI_EVENT_FORMAT_RAW;
00068     break;
00069   }
00070   return result;
00071 }
00072 
00073 #endif

Generated on Mon Feb 6 14:01:22 2006 for SCT DAQ/DCS Software - C++ by  doxygen 1.4.6