/home/coin/SVN-release/CoinAll-1.1.0/SYMPHONY/include/sym_proccomm.h

Go to the documentation of this file.
00001 /*===========================================================================*/
00002 /*                                                                           */
00003 /* This file is part of the SYMPHONY MILP Solver Framework.                  */
00004 /*                                                                           */
00005 /* SYMPHONY was jointly developed by Ted Ralphs (tkralphs@lehigh.edu) and    */
00006 /* Laci Ladanyi (ladanyi@us.ibm.com).                                        */
00007 /*                                                                           */
00008 /* (c) Copyright 2000-2008 Ted Ralphs. All Rights Reserved.                  */
00009 /*                                                                           */
00010 /* This software is licensed under the Common Public License. Please see     */
00011 /* accompanying file for terms.                                              */
00012 /*                                                                           */
00013 /*===========================================================================*/
00014 
00015 #ifndef _PROCCOMM_H
00016 #define _PROCCOMM_H
00017 
00018 #include "sym_proto.h"
00019 #include "sym_timemeas.h"
00020 
00021 #ifdef __PVM__
00022 #include <pvm3.h>
00023 #define DataInPlace PvmDataRaw
00024 #define TaskHost PvmTaskHost
00025 #define PROCESS_OK PvmOk
00026 #define PVM_FUNC(info, func)   if ((info = func) < 0) PVM_ERROR(info);
00027 #else
00028 #define PROCESS_OK 1
00029 #define DataInPlace 0
00030 #define TaskHost 0
00031 #endif
00032 
00033 int register_process PROTO((void));
00034 int init_send PROTO((int data_packing));
00035 int send_char_array PROTO((char *array, int size));
00036 int send_int_array PROTO((int *array, int size));
00037 int send_dbl_array PROTO((double *array, int size));
00038 int send_float_array PROTO((float *array, int size));
00039 int send_str PROTO((char *str));
00040 int send_msg PROTO((int recipient, int msgtag));
00041 int msend_msg PROTO((int *recipients, int number, int msgtag));
00042 int receive_msg PROTO((int who, int what));
00043 int treceive_msg PROTO((int who, int what, struct timeval *timeout));
00044 int nreceive_msg PROTO((int who, int what));
00045 int bufinfo PROTO((int r_bufid, int *bytes, int *msgtag, int *sender));
00046 int freebuf PROTO((int bufid));
00047 int receive_char_array PROTO((char *array, int size));
00048 int receive_int_array PROTO((int *array, int size));
00049 int receive_dbl_array PROTO((double *array, int size));
00050 int receive_float_array PROTO((float *array, int size));
00051 int receive_str PROTO((char *str));
00052 int spawn PROTO((char *task, char **argv, int flag, char *where, int ntask,
00053                  int *tids));
00054 int pstat PROTO((int tid));
00055 void kill_proc PROTO((int tid));
00056 void comm_exit PROTO((void));
00057 void setsbuf PROTO((int sbufid));
00058 void setrbuf PROTO((int rbufid));
00059      
00060 void PVM_ERROR(int info);
00061 
00062 #endif

Generated on Sun Nov 14 14:06:42 2010 for Coin-All by  doxygen 1.4.7