gs_probe.c

Go to the documentation of this file.
00001 
00007 /* $Id: gs_probe.c,v 1.5 2007/03/09 19:35:20 seymour Exp $ */
00008 /* $UTK_Copyright: $ */
00009 
00010 #include <stdio.h>
00011 #include "idl_export.h"
00012 #include "grpc.h"
00013 
00025 IDL_VPTR
00026 gs_probe(int argc, IDL_VPTR* argv_idl)
00027 {
00028   grpc_error_t retval;
00029   int req_id, ret;
00030 
00031   IDL_ENSURE_SCALAR(argv_idl[0]);
00032 
00033   req_id = IDL_LongScalar(argv_idl[0]);
00034 
00035   /* Initialize GridRPC system */
00036   retval = grpc_initialize(NULL);
00037   if((retval != GRPC_NO_ERROR) && (retval != GRPC_ALREADY_INITIALIZED)) {
00038     IDL_Message(IDL_M_GENERIC, IDL_MSG_INFO, "Error: cannot initialize!");
00039     return IDL_GettmpLong(retval);
00040   }
00041 
00042   IDL_TimerBlock(IDL_TRUE);
00043   ret = (int) grpc_probe((grpc_sessionid_t) req_id);
00044   IDL_TimerBlock(IDL_FALSE);
00045 
00046   return IDL_GettmpLong(ret);
00047 }