int user_send_lp_data(void *user, void **user_lp)
The user has to send all problem-specific data that will be needed in the LP process to set up the initial LP relaxation and perform later computations. This could include instance data, as well as user parameter settings. This is one of the few places where the user will need to worry about the configuration of the modules. If either the tree manager or the LP are running as a separate process (either COMPILE_IN_LP or COMPILE_IN_TM are FALSE in the make file), then the data will be sent and received through message-passing. See user_receive_lp_data() for more discussion. Otherwise, it can be copied over directly to the user-defined data structure for the LP. In the latter case, *user_lp is a pointer to the user-defined data structure for the LP that must be allocated and initialized. For a discussion of message-passing in SYMPHONY, see Section 1.7. The code for the two cases is put in the same source file by use of #ifdef statements. See the comments in the code stub for this function for more details.
void *user | IN | Pointer to the user-defined data structure. |
void **user_lp | OUT | Pointer to the user-defined data structure for the LP process. |
ERROR | Error. SYMPHONY stops. |
USER_NO_PP | Packing is done. |