mrpc.c

Go to the documentation of this file.
00001 /********************************************************************\
00002 
00003   Name:         MRPC.C
00004   Created by:   Stefan Ritt
00005 
00006   Contents:     List of MIDAS RPC functions with parameters
00007 
00008   $Id: mrpc.c 2753 2005-10-07 14:55:31Z ritt $
00009 
00010 \********************************************************************/
00011 
00012 /**dox***************************************************************/
00013 /** @file mrpc.c
00014 The Midas RPC file
00015 */
00016 
00017 /** @defgroup mrpcstructc Midas RPC_LIST 
00018  */
00019 
00020 /**dox***************************************************************/
00021 /** @addtogroup mrpcincludecode
00022  *  
00023  *  @{  */
00024 
00025 /**dox***************************************************************/
00026 /** @addtogroup mrpcstructc
00027  *  
00028  *  @{  */
00029 
00030 /**dox***************************************************************/
00031 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00032 
00033 #include "midas.h"
00034 #include "msystem.h"
00035 
00036 /**dox***************************************************************/
00037 #endif                          /* DOXYGEN_SHOULD_SKIP_THIS */
00038 
00039 /**dox***************************************************************/
00040 /**
00041 rpc_list_library contains all MIDAS library functions and gets
00042 registerd whenever a connection to the MIDAS server is established 
00043 */
00044 static RPC_LIST rpc_list_library[] = {
00045 
00046    /* common functions */
00047    {RPC_CM_SET_CLIENT_INFO, "cm_set_client_info",
00048     {{TID_INT, RPC_IN},
00049      {TID_INT, RPC_OUT},
00050      {TID_STRING, RPC_IN},
00051      {TID_STRING, RPC_IN},
00052      {TID_INT, RPC_IN},
00053      {TID_STRING, RPC_IN},
00054      {TID_INT, RPC_IN},
00055      {0}}},
00056 
00057    {RPC_CM_SET_WATCHDOG_PARAMS, "cm_set_watchdog_params",
00058     {{TID_BOOL, RPC_IN},
00059      {TID_INT, RPC_IN},
00060      {0}}},
00061 
00062    {RPC_CM_CLEANUP, "cm_cleanup",
00063     {{TID_STRING, RPC_IN},
00064      {TID_BOOL, RPC_IN},
00065      {0}}},
00066 
00067    {RPC_CM_GET_WATCHDOG_INFO, "cm_get_watchdog_info",
00068     {{TID_INT, RPC_IN},
00069      {TID_STRING, RPC_IN},
00070      {TID_DWORD, RPC_OUT},
00071      {TID_DWORD, RPC_OUT},
00072      {0}}},
00073 
00074    {RPC_CM_MSG, "cm_msg",
00075     {{TID_INT, RPC_IN},
00076      {TID_STRING, RPC_IN},
00077      {TID_INT, RPC_IN},
00078      {TID_STRING, RPC_IN},
00079      {TID_STRING, RPC_IN},
00080      {0}}},
00081 
00082    {RPC_CM_MSG_LOG, "cm_msg_log",
00083     {{TID_INT, RPC_IN},
00084      {TID_STRING, RPC_IN},
00085      {0}}},
00086 
00087    {RPC_CM_MSG_LOG1, "cm_msg_log1",
00088     {{TID_INT, RPC_IN},
00089      {TID_STRING, RPC_IN},
00090      {TID_STRING, RPC_IN},
00091      {0}}},
00092 
00093    {RPC_CM_EXECUTE, "cm_execute",
00094     {{TID_STRING, RPC_IN},
00095      {TID_STRING, RPC_OUT},
00096      {TID_INT, RPC_IN},
00097      {0}}},
00098 
00099    {RPC_CM_EXIST, "cm_exist",
00100     {{TID_STRING, RPC_IN},
00101      {TID_BOOL, RPC_IN},
00102      {0}}},
00103 
00104    {RPC_CM_SYNCHRONIZE, "cm_synchronize",
00105     {{TID_DWORD, RPC_OUT},
00106      {0}}},
00107 
00108    {RPC_CM_ASCTIME, "cm_asctime",
00109     {{TID_STRING, RPC_OUT},
00110      {TID_INT, RPC_IN},
00111      {0}}},
00112 
00113    {RPC_CM_TIME, "cm_time",
00114     {{TID_DWORD, RPC_OUT},
00115      {0}}},
00116 
00117    {RPC_CM_MSG_RETRIEVE, "cm_msg_retrieve",
00118     {{TID_INT, RPC_IN},
00119      {TID_STRING, RPC_OUT},
00120      {TID_INT, RPC_IN | RPC_OUT},
00121      {0}}},
00122 
00123    /* buffer manager functions */
00124 
00125    {RPC_BM_OPEN_BUFFER, "bm_open_buffer",
00126     {{TID_STRING, RPC_IN},
00127      {TID_INT, RPC_IN},
00128      {TID_INT, RPC_OUT},
00129      {0}}},
00130 
00131    {RPC_BM_CLOSE_BUFFER, "bm_close_buffer",
00132     {{TID_INT, RPC_IN},
00133      {0}}},
00134 
00135    {RPC_BM_CLOSE_ALL_BUFFERS, "bm_close_all_buffers",
00136     {{0}}},
00137 
00138    {RPC_BM_GET_BUFFER_INFO, "bm_get_buffer_info",
00139     {{TID_INT, RPC_IN},
00140      {TID_STRUCT, RPC_OUT, sizeof(BUFFER_HEADER)}
00141      ,
00142      {0}
00143      }
00144     }
00145    ,
00146 
00147    {RPC_BM_GET_BUFFER_LEVEL, "bm_get_buffer_level",
00148     {{TID_INT, RPC_IN}
00149      ,
00150      {TID_INT, RPC_OUT}
00151      ,
00152      {0}
00153      }
00154     }
00155    ,
00156 
00157    {RPC_BM_INIT_BUFFER_COUNTERS, "bm_init_buffer_counters",
00158     {{TID_INT, RPC_IN}
00159      ,
00160      {0}
00161      }
00162     }
00163    ,
00164 
00165    {RPC_BM_SET_CACHE_SIZE, "bm_set_cache_size",
00166     {{TID_INT, RPC_IN}
00167      ,
00168      {TID_INT, RPC_IN}
00169      ,
00170      {TID_INT, RPC_IN}
00171      ,
00172      {0}
00173      }
00174     }
00175    ,
00176 
00177    {RPC_BM_ADD_EVENT_REQUEST, "bm_add_event_request",
00178     {{TID_INT, RPC_IN}
00179      ,
00180      {TID_SHORT, RPC_IN}
00181      ,
00182      {TID_SHORT, RPC_IN}
00183      ,
00184      {TID_INT, RPC_IN}
00185      ,
00186      {TID_INT, RPC_IN}
00187      ,
00188      {TID_INT, RPC_IN}
00189      ,
00190      {0}
00191      }
00192     }
00193    ,
00194 
00195    {RPC_BM_REMOVE_EVENT_REQUEST, "bm_remove_event_request",
00196     {{TID_INT, RPC_IN}
00197      ,
00198      {TID_INT, RPC_IN}
00199      ,
00200      {0}
00201      }
00202     }
00203    ,
00204 
00205    {RPC_BM_SEND_EVENT, "bm_send_event",
00206     {{TID_INT, RPC_IN}
00207      ,
00208      {TID_ARRAY, RPC_IN | RPC_VARARRAY}
00209      ,
00210      {TID_INT, RPC_IN}
00211      ,
00212      {TID_INT, RPC_IN}
00213      ,
00214      {0}
00215      }
00216     }
00217    ,
00218 
00219    {RPC_BM_FLUSH_CACHE, "bm_flush_cache",
00220     {{TID_INT, RPC_IN}
00221      ,
00222      {TID_INT, RPC_IN}
00223      ,
00224      {0}
00225      }
00226     }
00227    ,
00228 
00229    {RPC_BM_RECEIVE_EVENT, "bm_receive_event",
00230     {{TID_INT, RPC_IN}
00231      ,
00232      {TID_ARRAY, RPC_OUT | RPC_VARARRAY}
00233      ,
00234      {TID_INT, RPC_IN | RPC_OUT}
00235      ,
00236      {TID_INT, RPC_IN}
00237      ,
00238      {0}
00239      }
00240     }
00241    ,
00242 
00243    {RPC_BM_SKIP_EVENT, "bm_skip_event",
00244     {{TID_INT, RPC_IN}
00245      ,
00246      {0}
00247      }
00248     }
00249    ,
00250 
00251    {RPC_BM_MARK_READ_WAITING, "bm_mark_read_waiting",
00252     {{TID_BOOL, RPC_IN}
00253      ,
00254      {0}
00255      }
00256     }
00257    ,
00258 
00259    {RPC_BM_EMPTY_BUFFERS, "bm_empty_buffers",
00260     {{0}
00261      }
00262     }
00263    ,
00264 
00265    /* online database functions */
00266 
00267    {RPC_DB_OPEN_DATABASE, "db_open_database",
00268     {{TID_STRING, RPC_IN}
00269      ,
00270      {TID_INT, RPC_IN}
00271      ,
00272      {TID_INT, RPC_OUT}
00273      ,
00274      {TID_STRING, RPC_IN}
00275      ,
00276      {0}
00277      }
00278     }
00279    ,
00280 
00281    {RPC_DB_CLOSE_DATABASE, "db_close_database",
00282     {{TID_INT, RPC_IN}
00283      ,
00284      {0}
00285      }
00286     }
00287    ,
00288 
00289    {RPC_DB_FLUSH_DATABASE, "db_flush_database",
00290     {{TID_INT, RPC_IN}
00291      ,
00292      {0}
00293      }
00294     }
00295    ,
00296 
00297    {RPC_DB_CLOSE_ALL_DATABASES, "db_close_all_databases",
00298     {{0}
00299      }
00300     }
00301    ,
00302 
00303    {RPC_DB_CREATE_KEY, "db_create_key",
00304     {{TID_INT, RPC_IN}
00305      ,
00306      {TID_INT, RPC_IN}
00307      ,
00308      {TID_STRING, RPC_IN}
00309      ,
00310      {TID_DWORD, RPC_IN}
00311      ,
00312      {0}
00313      }
00314     }
00315    ,
00316 
00317    {RPC_DB_CREATE_LINK, "db_create_link",
00318     {{TID_INT, RPC_IN}
00319      ,
00320      {TID_INT, RPC_IN}
00321      ,
00322      {TID_STRING, RPC_IN}
00323      ,
00324      {TID_STRING, RPC_IN}
00325      ,
00326      {0}
00327      }
00328     }
00329    ,
00330 
00331    {RPC_DB_SET_VALUE, "db_set_value",
00332     {{TID_INT, RPC_IN}
00333      ,
00334      {TID_INT, RPC_IN}
00335      ,
00336      {TID_STRING, RPC_IN}
00337      ,
00338      {TID_ARRAY, RPC_IN | RPC_VARARRAY}
00339      ,
00340      {TID_INT, RPC_IN}
00341      ,
00342      {TID_INT, RPC_IN}
00343      ,
00344      {TID_DWORD, RPC_IN}
00345      ,
00346      {0}
00347      }
00348     }
00349    ,
00350 
00351    {RPC_DB_GET_VALUE, "db_get_value",
00352     {{TID_INT, RPC_IN}
00353      ,
00354      {TID_INT, RPC_IN}
00355      ,
00356      {TID_STRING, RPC_IN}
00357      ,
00358      {TID_ARRAY, RPC_IN | RPC_OUT | RPC_VARARRAY}
00359      ,
00360      {TID_INT, RPC_IN | RPC_OUT}
00361      ,
00362      {TID_DWORD, RPC_IN}
00363      ,
00364      {TID_BOOL, RPC_IN}
00365      ,
00366      {0}
00367      }
00368     }
00369    ,
00370 
00371    {RPC_DB_FIND_KEY, "db_find_key",
00372     {{TID_INT, RPC_IN}
00373      ,
00374      {TID_INT, RPC_IN}
00375      ,
00376      {TID_STRING, RPC_IN}
00377      ,
00378      {TID_INT, RPC_OUT}
00379      ,
00380      {0}
00381      }
00382     }
00383    ,
00384 
00385    {RPC_DB_FIND_LINK, "db_fink_link",
00386     {{TID_INT, RPC_IN}
00387      ,
00388      {TID_INT, RPC_IN}
00389      ,
00390      {TID_STRING, RPC_IN}
00391      ,
00392      {TID_INT, RPC_OUT}
00393      ,
00394      {0}
00395      }
00396     }
00397    ,
00398 
00399    {RPC_DB_GET_PATH, "db_get_path",
00400     {{TID_INT, RPC_IN}
00401      ,
00402      {TID_INT, RPC_IN}
00403      ,
00404      {TID_STRING, RPC_OUT}
00405      ,
00406      {TID_INT, RPC_IN}
00407      ,
00408      {0}
00409      }
00410     }
00411    ,
00412 
00413    {RPC_DB_DELETE_KEY, "db_delete_key",
00414     {{TID_INT, RPC_IN}
00415      ,
00416      {TID_INT, RPC_IN}
00417      ,
00418      {TID_BOOL, RPC_IN}
00419      ,
00420      {0}
00421      }
00422     }
00423    ,
00424 
00425    {RPC_DB_ENUM_KEY, "db_enum_key",
00426     {{TID_INT, RPC_IN}
00427      ,
00428      {TID_INT, RPC_IN}
00429      ,
00430      {TID_INT, RPC_IN}
00431      ,
00432      {TID_INT, RPC_OUT}
00433      ,
00434      {0}
00435      }
00436     }
00437    ,
00438 
00439    {RPC_DB_ENUM_LINK, "db_enum_link",
00440     {{TID_INT, RPC_IN}
00441      ,
00442      {TID_INT, RPC_IN}
00443      ,
00444      {TID_INT, RPC_IN}
00445      ,
00446      {TID_INT, RPC_OUT}
00447      ,
00448      {0}
00449      }
00450     }
00451    ,
00452 
00453    {RPC_DB_GET_KEY, "db_get_key",
00454     {{TID_INT, RPC_IN}
00455      ,
00456      {TID_INT, RPC_IN}
00457      ,
00458      {TID_STRUCT, RPC_OUT, sizeof(KEY)}
00459      ,
00460      {0}
00461      }
00462     }
00463    ,
00464 
00465    {RPC_DB_GET_KEY_INFO, "db_get_key_info",
00466     {{TID_INT, RPC_IN}
00467      ,
00468      {TID_INT, RPC_IN}
00469      ,
00470      {TID_STRING, RPC_OUT}
00471      ,
00472      {TID_INT, RPC_IN}
00473      ,
00474      {TID_INT, RPC_OUT}
00475      ,
00476      {TID_INT, RPC_OUT}
00477      ,
00478      {TID_INT, RPC_OUT}
00479      ,
00480      {0}
00481      }
00482     }
00483    ,
00484 
00485    {RPC_DB_GET_KEY_TIME, "db_get_key_time",
00486     {{TID_INT, RPC_IN}
00487      ,
00488      {TID_INT, RPC_IN}
00489      ,
00490      {TID_DWORD, RPC_OUT}
00491      ,
00492      {0}
00493      }
00494     }
00495    ,
00496 
00497    {RPC_DB_RENAME_KEY, "db_rename_key",
00498     {{TID_INT, RPC_IN}
00499      ,
00500      {TID_INT, RPC_IN}
00501      ,
00502      {TID_STRING, RPC_IN}
00503      ,
00504      {0}
00505      }
00506     }
00507    ,
00508 
00509    {RPC_DB_REORDER_KEY, "db_reorder_key",
00510     {{TID_INT, RPC_IN}
00511      ,
00512      {TID_INT, RPC_IN}
00513      ,
00514      {TID_INT, RPC_IN}
00515      ,
00516      {0}
00517      }
00518     }
00519    ,
00520 
00521    {RPC_DB_GET_DATA, "db_get_data",
00522     {{TID_INT, RPC_IN}
00523      ,
00524      {TID_INT, RPC_IN}
00525      ,
00526      {TID_ARRAY, RPC_OUT | RPC_VARARRAY}
00527      ,
00528      {TID_INT, RPC_IN | RPC_OUT}
00529      ,
00530      {TID_DWORD, RPC_IN}
00531      ,
00532      {0}
00533      }
00534     }
00535    ,
00536 
00537    {RPC_DB_GET_DATA1, "db_get_data1",
00538     {{TID_INT, RPC_IN}
00539      ,
00540      {TID_INT, RPC_IN}
00541      ,
00542      {TID_ARRAY, RPC_OUT | RPC_VARARRAY}
00543      ,
00544      {TID_INT, RPC_IN | RPC_OUT}
00545      ,
00546      {TID_DWORD, RPC_IN}
00547      ,
00548      {TID_INT, RPC_OUT}
00549      ,
00550      {0}
00551      }
00552     }
00553    ,
00554 
00555    {RPC_DB_GET_DATA_INDEX, "db_get_data_index",
00556     {{TID_INT, RPC_IN}
00557      ,
00558      {TID_INT, RPC_IN}
00559      ,
00560      {TID_ARRAY, RPC_OUT | RPC_VARARRAY}
00561      ,
00562      {TID_INT, RPC_IN | RPC_OUT}
00563      ,
00564      {TID_INT, RPC_IN}
00565      ,
00566      {TID_DWORD, RPC_IN}
00567      ,
00568      {0}
00569      }
00570     }
00571    ,
00572 
00573    {RPC_DB_SET_DATA, "db_set_data",
00574     {{TID_INT, RPC_IN}
00575      ,
00576      {TID_INT, RPC_IN}
00577      ,
00578      {TID_ARRAY, RPC_IN | RPC_VARARRAY}
00579      ,
00580      {TID_INT, RPC_IN}
00581      ,
00582      {TID_INT, RPC_IN}
00583      ,
00584      {TID_DWORD, RPC_IN}
00585      ,
00586      {0}
00587      }
00588     }
00589    ,
00590 
00591    {RPC_DB_SET_DATA_INDEX, "db_set_data_index",
00592     {{TID_INT, RPC_IN}
00593      ,
00594      {TID_INT, RPC_IN}
00595      ,
00596      {TID_ARRAY, RPC_IN | RPC_VARARRAY}
00597      ,
00598      {TID_INT, RPC_IN}
00599      ,
00600      {TID_INT, RPC_IN}
00601      ,
00602      {TID_DWORD, RPC_IN}
00603      ,
00604      {0}
00605      }
00606     }
00607    ,
00608 
00609    {RPC_DB_SET_DATA_INDEX2, "db_set_data_index2",
00610     {{TID_INT, RPC_IN}
00611      ,
00612      {TID_INT, RPC_IN}
00613      ,
00614      {TID_ARRAY, RPC_IN | RPC_VARARRAY}
00615      ,
00616      {TID_INT, RPC_IN}
00617      ,
00618      {TID_INT, RPC_IN}
00619      ,
00620      {TID_DWORD, RPC_IN}
00621      ,
00622      {TID_BOOL, RPC_IN}
00623      ,
00624      {0}
00625      }
00626     }
00627    ,
00628 
00629    {RPC_DB_SET_NUM_VALUES, "db_set_num_values",
00630     {{TID_INT, RPC_IN}
00631      ,
00632      {TID_INT, RPC_IN}
00633      ,
00634      {TID_INT, RPC_IN}
00635      ,
00636      {0}
00637      }
00638     }
00639    ,
00640 
00641    {RPC_DB_SET_MODE, "db_set_mode",
00642     {{TID_INT, RPC_IN}
00643      ,
00644      {TID_INT, RPC_IN}
00645      ,
00646      {TID_WORD, RPC_IN}
00647      ,
00648      {TID_BOOL, RPC_IN}
00649      ,
00650      {0}
00651      }
00652     }
00653    ,
00654 
00655    {RPC_DB_CREATE_RECORD, "db_create_record",
00656     {{TID_INT, RPC_IN}
00657      ,
00658      {TID_INT, RPC_IN}
00659      ,
00660      {TID_STRING, RPC_IN}
00661      ,
00662      {TID_STRING, RPC_IN}
00663      ,
00664      {0}
00665      }
00666     }
00667    ,
00668 
00669    {RPC_DB_CHECK_RECORD, "db_check_record",
00670     {{TID_INT, RPC_IN}
00671      ,
00672      {TID_INT, RPC_IN}
00673      ,
00674      {TID_STRING, RPC_IN}
00675      ,
00676      {TID_STRING, RPC_IN}
00677      ,
00678      {TID_BOOL, RPC_IN}
00679      ,
00680      {0}
00681      }
00682     }
00683    ,
00684 
00685    {RPC_DB_GET_RECORD, "db_get_record",
00686     {{TID_INT, RPC_IN}
00687      ,
00688      {TID_INT, RPC_IN}
00689      ,
00690      {TID_ARRAY, RPC_OUT | RPC_VARARRAY}
00691      ,
00692      {TID_INT, RPC_IN | RPC_OUT}
00693      ,
00694      {TID_INT, RPC_IN}
00695      ,
00696      {0}
00697      }
00698     }
00699    ,
00700 
00701    {RPC_DB_GET_RECORD_SIZE, "db_get_record_size",
00702     {{TID_INT, RPC_IN}
00703      ,
00704      {TID_INT, RPC_IN}
00705      ,
00706      {TID_INT, RPC_IN}
00707      ,
00708      {TID_INT, RPC_OUT}
00709      ,
00710      {0}
00711      }
00712     }
00713    ,
00714 
00715    {RPC_DB_SET_RECORD, "db_set_record",
00716     {{TID_INT, RPC_IN}
00717      ,
00718      {TID_INT, RPC_IN}
00719      ,
00720      {TID_ARRAY, RPC_IN | RPC_VARARRAY}
00721      ,
00722      {TID_INT, RPC_IN}
00723      ,
00724      {TID_INT, RPC_IN}
00725      ,
00726      {0}
00727      }
00728     }
00729    ,
00730 
00731    {RPC_DB_ADD_OPEN_RECORD, "db_add_open_record",
00732     {{TID_INT, RPC_IN}
00733      ,
00734      {TID_INT, RPC_IN}
00735      ,
00736      {TID_WORD, RPC_IN}
00737      ,
00738      {0}
00739      }
00740     }
00741    ,
00742 
00743    {RPC_DB_REMOVE_OPEN_RECORD, "db_remove_open_record",
00744     {{TID_INT, RPC_IN}
00745      ,
00746      {TID_INT, RPC_IN}
00747      ,
00748      {0}
00749      }
00750     }
00751    ,
00752 
00753    {RPC_DB_LOAD, "db_load",
00754     {{TID_INT, RPC_IN}
00755      ,
00756      {TID_INT, RPC_IN}
00757      ,
00758      {TID_STRING, RPC_IN}
00759      ,
00760      {TID_BOOL, RPC_IN}
00761      ,
00762      {0}
00763      }
00764     }
00765    ,
00766 
00767    {RPC_DB_SAVE, "db_save",
00768     {{TID_INT, RPC_IN}
00769      ,
00770      {TID_INT, RPC_IN}
00771      ,
00772      {TID_STRING, RPC_IN}
00773      ,
00774      {TID_BOOL, RPC_IN}
00775      ,
00776      {0}
00777      }
00778     }
00779    ,
00780 
00781    {RPC_DB_SET_CLIENT_NAME, "db_set_client_name",
00782     {{TID_INT, RPC_IN}
00783      ,
00784      {TID_STRING, RPC_IN}
00785      ,
00786      {0}
00787      }
00788     }
00789    ,
00790 
00791    {RPC_DB_GET_OPEN_RECORDS, "db_get_open_records",
00792     {{TID_INT, RPC_IN}
00793      ,
00794      {TID_INT, RPC_IN}
00795      ,
00796      {TID_STRING, RPC_OUT}
00797      ,
00798      {TID_INT, RPC_IN}
00799      ,
00800      {TID_BOOL, RPC_IN}
00801      ,
00802      {0}
00803      }
00804     }
00805    ,
00806 
00807    /* history functions */
00808 
00809    {RPC_HS_SET_PATH, "hs_set_path",
00810     {{TID_STRING, RPC_IN}
00811      ,
00812      {0}
00813      }
00814     }
00815    ,
00816 
00817    {RPC_HS_DEFINE_EVENT, "hs_define_event",
00818     {{TID_DWORD, RPC_IN}
00819      ,
00820      {TID_STRING, RPC_IN}
00821      ,
00822      {TID_ARRAY, RPC_IN | RPC_VARARRAY}
00823      ,
00824      {TID_INT, RPC_IN}
00825      ,
00826      {0}
00827      }
00828     }
00829    ,
00830 
00831    {RPC_HS_WRITE_EVENT, "hs_write_event",
00832     {{TID_DWORD, RPC_IN}
00833      ,
00834      {TID_ARRAY, RPC_IN | RPC_VARARRAY}
00835      ,
00836      {TID_INT, RPC_IN}
00837      ,
00838      {0}
00839      }
00840     }
00841    ,
00842 
00843    {RPC_HS_COUNT_EVENTS, "hs_count_events",
00844     {{TID_DWORD, RPC_IN}
00845      ,
00846      {TID_DWORD, RPC_OUT}
00847      ,
00848      {0}
00849      }
00850     }
00851    ,
00852 
00853    {RPC_HS_ENUM_EVENTS, "hs_enum_events",
00854     {{TID_DWORD, RPC_IN}
00855      ,
00856      {TID_STRING, RPC_OUT | RPC_VARARRAY}
00857      ,
00858      {TID_INT, RPC_IN | RPC_OUT}
00859      ,
00860      {TID_INT, RPC_OUT | RPC_VARARRAY}
00861      ,
00862      {TID_INT, RPC_IN | RPC_OUT}
00863      ,
00864      {0}
00865      }
00866     }
00867    ,
00868 
00869    {RPC_HS_COUNT_VARS, "hs_count_vars",
00870     {{TID_DWORD, RPC_IN}
00871      ,
00872      {TID_DWORD, RPC_IN}
00873      ,
00874      {TID_DWORD, RPC_OUT}
00875      ,
00876      {0}
00877      }
00878     }
00879    ,
00880 
00881    {RPC_HS_ENUM_VARS, "hs_enum_vars",
00882     {{TID_DWORD, RPC_IN}
00883      ,
00884      {TID_DWORD, RPC_IN}
00885      ,
00886      {TID_STRING, RPC_OUT | RPC_VARARRAY}
00887      ,
00888      {TID_INT, RPC_IN | RPC_OUT}
00889      ,
00890      {TID_DWORD, RPC_OUT | RPC_VARARRAY}
00891      ,
00892      {TID_DWORD, RPC_IN | RPC_OUT}
00893      ,
00894      {0}
00895      }
00896     }
00897    ,
00898 
00899    {RPC_HS_GET_VAR, "hs_get_var",
00900     {{TID_DWORD, RPC_IN}
00901      ,
00902      {TID_DWORD, RPC_IN}
00903      ,
00904      {TID_STRING, RPC_IN}
00905      ,
00906      {TID_DWORD, RPC_OUT}
00907      ,
00908      {TID_INT, RPC_OUT}
00909      ,
00910      {0}
00911      }
00912     }
00913    ,
00914 
00915    {RPC_HS_GET_EVENT_ID, "hs_get_event_id",
00916     {{TID_DWORD, RPC_IN}
00917      ,
00918      {TID_STRING, RPC_IN}
00919      ,
00920      {TID_DWORD, RPC_OUT}
00921      ,
00922      {0}
00923      }
00924     }
00925    ,
00926 
00927    {RPC_HS_READ, "hs_read",
00928     {{TID_DWORD, RPC_IN}
00929      ,
00930      {TID_DWORD, RPC_IN}
00931      ,
00932      {TID_DWORD, RPC_IN}
00933      ,
00934      {TID_DWORD, RPC_IN}
00935      ,
00936      {TID_STRING, RPC_IN}
00937      ,
00938      {TID_DWORD, RPC_IN}
00939      ,
00940      {TID_ARRAY, RPC_OUT | RPC_VARARRAY}
00941      ,
00942      {TID_INT, RPC_IN | RPC_OUT}
00943      ,
00944      {TID_ARRAY, RPC_OUT | RPC_VARARRAY}
00945      ,
00946      {TID_INT, RPC_IN | RPC_OUT}
00947      ,
00948      {TID_DWORD, RPC_OUT}
00949      ,
00950      {TID_DWORD, RPC_OUT}
00951      ,
00952      {0}
00953      }
00954     }
00955    ,
00956 
00957    /* elog funcions */
00958 
00959    {RPC_EL_SUBMIT, "el_submit",
00960     {{TID_INT, RPC_IN}
00961      ,
00962      {TID_STRING, RPC_IN}
00963      ,
00964      {TID_STRING, RPC_IN}
00965      ,
00966      {TID_STRING, RPC_IN}
00967      ,
00968      {TID_STRING, RPC_IN}
00969      ,
00970      {TID_STRING, RPC_IN}
00971      ,
00972      {TID_STRING, RPC_IN}
00973      ,
00974      {TID_STRING, RPC_IN}
00975      ,
00976      {TID_STRING, RPC_IN}
00977      ,
00978      {TID_ARRAY, RPC_IN | RPC_VARARRAY}
00979      ,
00980      {TID_INT, RPC_IN}
00981      ,
00982      {TID_STRING, RPC_IN}
00983      ,
00984      {TID_ARRAY, RPC_IN | RPC_VARARRAY}
00985      ,
00986      {TID_INT, RPC_IN}
00987      ,
00988      {TID_STRING, RPC_IN}
00989      ,
00990      {TID_ARRAY, RPC_IN | RPC_VARARRAY}
00991      ,
00992      {TID_INT, RPC_IN}
00993      ,
00994      {TID_STRING, RPC_IN, RPC_OUT}
00995      ,
00996      {TID_INT, RPC_IN}
00997      ,
00998      {0}
00999      }
01000     }
01001    ,
01002 
01003    /* alarm  funcions */
01004 
01005    {RPC_AL_CHECK, "al_check",
01006     {{0}
01007      }
01008     }
01009    ,
01010 
01011    {RPC_AL_TRIGGER_ALARM, "al_trigger_alarm",
01012     {{TID_STRING, RPC_IN}
01013      ,
01014      {TID_STRING, RPC_IN}
01015      ,
01016      {TID_STRING, RPC_IN}
01017      ,
01018      {TID_STRING, RPC_IN}
01019      ,
01020      {TID_INT, RPC_IN}
01021      ,
01022      {0}
01023      }
01024     }
01025    ,
01026 
01027    /* run control */
01028 
01029    {RPC_RC_TRANSITION, "rc_transition",
01030     {{TID_INT, RPC_IN}
01031      ,
01032      {TID_INT, RPC_IN}
01033      ,
01034      {TID_STRING, RPC_OUT}
01035      ,
01036      {TID_INT, RPC_IN}
01037      ,
01038      {TID_INT, RPC_IN}
01039      ,
01040      {0}
01041      }
01042     }
01043    ,
01044 
01045 
01046    /* analyzer control */
01047 
01048    {RPC_ANA_CLEAR_HISTOS, "ana_clear_histos",
01049     {{TID_INT, RPC_IN}
01050      ,
01051      {TID_INT, RPC_IN}
01052      ,
01053      {0}
01054      }
01055     }
01056    ,
01057 
01058 
01059    /* logger control */
01060 
01061    {RPC_LOG_REWIND, "log_rewind",
01062     {{TID_INT, RPC_IN}
01063      ,
01064      {0}
01065      }
01066     }
01067    ,
01068 
01069 
01070    /* test functions */
01071 
01072    {RPC_TEST, "test",
01073     {{TID_BYTE, RPC_IN}
01074      ,
01075      {TID_WORD, RPC_IN}
01076      ,
01077      {TID_INT, RPC_IN}
01078      ,
01079      {TID_FLOAT, RPC_IN}
01080      ,
01081      {TID_DOUBLE, RPC_IN}
01082      ,
01083      {TID_BYTE, RPC_OUT}
01084      ,
01085      {TID_WORD, RPC_OUT}
01086      ,
01087      {TID_INT, RPC_OUT}
01088      ,
01089      {TID_FLOAT, RPC_OUT}
01090      ,
01091      {TID_DOUBLE, RPC_OUT}
01092      ,
01093      {0}
01094      }
01095     }
01096    ,
01097 
01098    /* CAMAC server */
01099 
01100    {RPC_CNAF16, "cnaf16",
01101     {{TID_DWORD, RPC_IN}
01102      ,                          /* command */
01103      {TID_DWORD, RPC_IN}
01104      ,                          /* branch */
01105      {TID_DWORD, RPC_IN}
01106      ,                          /* crate */
01107      {TID_DWORD, RPC_IN}
01108      ,                          /* station */
01109      {TID_DWORD, RPC_IN}
01110      ,                          /* subaddress */
01111      {TID_DWORD, RPC_IN}
01112      ,                          /* function */
01113      {TID_WORD, RPC_IN | RPC_OUT | RPC_VARARRAY}
01114      ,                          /* data */
01115      {TID_DWORD, RPC_IN | RPC_OUT}
01116      ,                          /* array size */
01117      {TID_DWORD, RPC_OUT}
01118      ,                          /* x */
01119      {TID_DWORD, RPC_OUT}
01120      ,                          /* q */
01121      {0}
01122      }
01123     }
01124    ,
01125 
01126    {RPC_CNAF24, "cnaf24",
01127     {{TID_DWORD, RPC_IN}
01128      ,                                    /**< command */
01129      {TID_DWORD, RPC_IN}
01130      ,                                    /**< branch */
01131      {TID_DWORD, RPC_IN}
01132      ,                                    /**< crate */
01133      {TID_DWORD, RPC_IN}
01134      ,                                    /**< station */
01135      {TID_DWORD, RPC_IN}
01136      ,                                    /**< subaddress */
01137      {TID_DWORD, RPC_IN}
01138      ,                                    /**< function */
01139      {TID_DWORD, RPC_IN | RPC_OUT | RPC_VARARRAY}
01140      ,                                                  /**< data */
01141      {TID_DWORD, RPC_IN | RPC_OUT}
01142      ,                                    /**< array size */
01143      {TID_DWORD, RPC_OUT}
01144      ,                                    /**< x */
01145      {TID_DWORD, RPC_OUT}
01146      ,                                    /**< q */
01147      {0}
01148      }
01149     }
01150    ,
01151 
01152    /* manual triggered equipment */
01153 
01154    {RPC_MANUAL_TRIG, "manual_trig",
01155     {{TID_WORD, RPC_IN}
01156      ,                          /* event id */
01157      {0}
01158      }
01159     }
01160    ,
01161 
01162    {0}
01163 
01164 };
01165 
01166 /**dox***************************************************************/
01167 /** 
01168 rpc_list_system contains MIDAS system functions and gets
01169 registerd whenever a RPC server is registered
01170 */
01171 static RPC_LIST rpc_list_system[] = {
01172 
01173    /* system  functions */
01174    {RPC_ID_WATCHDOG, "id_watchdog",
01175     {{0}}},
01176 
01177    {RPC_ID_SHUTDOWN, "id_shutdown",
01178     {{0}}},
01179 
01180    {RPC_ID_EXIT, "id_exit",
01181     {{0}}},
01182 
01183    {0}
01184 
01185 };
01186 
01187 RPC_LIST *rpc_get_internal_list(INT flag)
01188 {
01189    if (flag)
01190       return rpc_list_library;
01191    else
01192       return rpc_list_system;
01193 }
01194 
01195 /*------------------------------------------------------------------*/
01196 
01197 /**dox***************************************************************/
01198 /** @} */ /* end of mrpcstructc */
01199 
01200 /**dox***************************************************************/
01201 /** @} */ /* end of mrpcincludecode */

Midas DOC Version 1.9.5 ---- PSI Stefan Ritt ----
Contributions: Pierre-Andre Amaudruz - Sergio Ballestrero - Suzannah Daviel - Doxygen - Peter Green - Qing Gu - Greg Hackman - Gertjan Hofman - Paul Knowles - Rudi Meier - Glenn Moloney - Dave Morris - John M O'Donnell - Konstantin Olchanski - Renee Poutissou - Tamsen Schurman - Andreas Suter - Jan M.Wouters - Piotr Adam Zolnierczuk