CheckConfig.cxx

00001 #define USELIBRARY
00002 
00003 #include <iostream>
00004 
00005 #include "../TApi.h"
00006 
00007 unsigned mid=2;
00008 
00009 int main() {
00010   using namespace std;
00011   std::set_terminate(__gnu_cxx::__verbose_terminate_handler);
00012 
00013   // Start TApi
00014   TApi tapi;
00015   //tapi.setDebugOption("print_in_prim");
00016   tapi.initialiseAll(0);
00017 
00018   tapi.setDebugOption("diag");
00019   tapi.setDebugOption("diag2");
00020   tapi.setDebugOption("api_config_cache_check");
00021   tapi.setDebugOption("print_in_prim"); 
00022   // test set, send and get
00023   int variables[5] = {1,6,12,18,101};
00024   for (unsigned i=0;i<5;++i){
00025     std::cout << "=====================================================================" << std::endl;
00026     unsigned bank=i%3;
00027     std::cout << "modify variable " << variables[i] << " on bank " << bank << std::endl;
00028     tapi.modifyABCDVar(variables[i],bank);
00029     tapi.setABCDModules(bank);
00030     tapi.sendABCDModules(bank);
00031     tapi.getABCDModules(bank);
00032   }
00033   
00034   // test multi-set
00035   tapi.modifyABCDVar(6, 5); // modify trim
00036   std::list<UINT32> banks;
00037   banks.push_back(0);
00038   banks.push_back(2);
00039   tapi.setABCDModules(banks);
00040 
00041   tapi.getABCDModules(0);
00042   tapi.getABCDModules(1);
00043   tapi.getABCDModules(2);
00044 
00045   // test on-rod modification
00046   //tapi.setDebugOption("print_in_prim");
00047   tapi.modifyABCDVarROD(101, 1, 0); // MVAR_ACTIVE
00048   tapi.modifyABCDVarROD(18, 1, 0);  // ST_ACTIVE
00049   tapi.modifyABCDVarROD(12, 0, 0);  // ST_TRIM_RANGE
00050   tapi.modifyABCDVarROD(42, 0, 0);  // ST_QCAL
00051   tapi.modifyABCDVarROD(mid, 41, 1.2, 0); // ST_QTHR
00052   tapi.modifyABCDVarROD(mid, 8, 41, 1.3, 0); // ST_QTHR 
00053   tapi.modifyABCDVarROD(mid, 6, 12, 0);
00054   tapi.getABCDModules(0);
00055 
00056   // test copy
00057   std::list<UINT32> new_banks;
00058   new_banks.push_back(1); 
00059   tapi.copyABCDModules(0, new_banks);
00060   tapi.unsetDebugOption("print_in_prim");
00061   tapi.getABCDModules(1);
00062   std::cout << "DONE" << std::endl;
00063 }

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