run_remote_program_c

	status.i4.v = run_remote_program_c(console_number.i4.v,
					   console_slot.i4.v,
					   program_name.i1a.r, message.i1a.r,
					   message_type.i4.v,
					   copy_options.sa.r, num_options.i4.v,
					   terminate.i4.v, remote_location.s.r
					   [,aux_data.g.v])

	This routine executes a console application program on a remote
	console.

	console_number	console number (Use a value of REMPGM_ANY_CONSOLE
			for remote batch operation or LOCAL_CONSOLE for
			running the application on the local console.)
	console_slot	console slot
			(AVAILABLE_PA_SLOT -> first available PA slot,
			 FORCED_AVAILABLE_PA_SLOT -> first available PA slot or
						     arbitrary slot if none
						     are available,
			 AVAILABLE_SA_SLOT -> first available SA slot,
			 FORCED_AVAILABLE_SA_SLOT -> first available SA slot or
						     arbitrary slot if none
						     are available,
			 AVAILABLE_SLOT -> first available PA or SA slot,
			 PA_SLOT -> primary application PA,
			 PB_SLOT -> primary application PB,
			 PC_SLOT -> primary application PC,
			 PD_SLOT -> primary application PD,
			 PE_SLOT -> primary application PE,
			 SA_SLOT -> secondary application SA,
			 SB_SLOT -> secondary application SB,
			 SC_SLOT -> secondary application SC)
			 SD_SLOT -> secondary application SD)
			 SE_SLOT -> secondary application SE)
	program_name	program name (eg "PA0052" or "D44")
			(PROCESS_NAME_LEN characters)
	message		message to send
	message_type	type of message to send to remote application
			(REMPGM_SCRIPT -> "message" is the null terminated
					  name of a script,
			 REMPGM_SCRIPT_LIST -> "message" is the null terminated
						name of an ASCII file containing
						a list of script names,
			 REMPGM_METHOD -> "message" is a null terminated
					  method string of the form
					  "method\\object\\qualifier",
			 REMPGM_FOREIGN_BUILT -> "message" is a remote program
						 request that has already been
						 built and will be simply
						 copied)
	copy_options	array of program image copy requests
			(array of structures of type REMOTE_COPY_DATA)
			(If no copies are desired, a value of NULL can
			 be passed for this argument.)
	num_options	number of copy options being requested
	terminate	end of request program disposition
			(TRUE -> terminate program after script or method
				 has been completed,
			 FALSE -> program will continue running after
				  the script or method has been completed)
			(Note: If REMPGM_ANY_CONSOLE is selected, the
			 program will always be requested to terminate.)
	remote_location	returned remote location where application will be run
			(structure of type PROGRAM_LOCATION)
			(If this information is not needed, a value of NULL
			 can be passed for this argument.)
	[aux_data]	auxilliary data depending on message type
			(REMPGM_SCRIPT -> structure of type
					  AUX_REMOTE_PROGRAM_SCRIPT_DATA)
			(default is NULL)

	This function returns ACNET status values as follows:

	OK			success
	CLIB_INVARG		invalid program name or message type
	CLIB_TOO_MANY		too many copy options specified, won't
				fit in program's command buffer
	CLIB_NO_SUCH		no available remote program slot
	ACNET_xxx		error in ACNET communication

	This function requires the following include files:

	cnsparam_h, cns_data_structs_h, clib_h, acnet_errors_h, tclk_events_h

	Related functions:

	remote_program_check, remote_program_get_script,
	remote_program_get_method, find_remote_program_slot_c,
	find_available_slot_c, slot_is_available_c, acnet_chgpgm,
	remote_program_build_method_c, remote_program_build_script_c,
	remote_pgm_build_script_list_c

	C/C++ usage:

	static const char	program_name[] = "D44   ";
	static const char	message[] = "plot SCRIPT     ";
	int			status;
	int			console_number = REMPGM_ANY_CONSOLE;
	int			console_slot = AVAILABLE_PA_SLOT;
	int			message_type = REMPGM_SCRIPT;
	int			num_options = 1;
	int			terminate = TRUE;
	void			*aux_data = (void *) NULL;
	REMOTE_COPY_DATA	copy_options;
	PROGRAM_LOCATION	remote_location;

	copy_options.screen_id = REMOTE_COPY_GRAPHICS_1;
	copy_options.clock_event = EVENT_NULL;
	copy_options.delay = 0;
	strcpy(copy_options.path,"/scratch/userb/pic/capture/");
	strcpy(copy_options.name,"plot_file_name");
	copy_options.append_date = TRUE;

	status = run_remote_program_c(console_number,console_slot,
				      program_name,message,message_type,
				      &copy_options,num_options,
				      terminate,&remote_location,aux_data);