/** copy method for event handler plugins (called when SCIP copies plugins) */ static SCIP_DECL_EVENTCOPY(eventCopyBestsol) { /*lint --e{715}*/ assert(scip != NULL); assert(eventhdlr != NULL); assert(strcmp(SCIPeventhdlrGetName(eventhdlr), EVENTHDLR_NAME) == 0); /* call inclusion method of event handler */ SCIP_CALL( SCIPincludeEventHdlrBestsol(scip) ); return SCIP_OKAY; }
/** runs the shell */ static SCIP_RETCODE runShell( int argc, /**< number of shell parameters */ char** argv, /**< array with shell parameters */ const char* defaultsetname /**< name of default settings file */ ) { SCIP* scip = NULL; /********* * Setup * *********/ /* initialize SCIP */ SCIP_CALL( SCIPcreate(&scip) ); /* include default plugins */ SCIP_CALL( SCIPincludeDefaultPlugins(scip) ); /* include event handler for best solution found */ SCIP_CALL( SCIPincludeEventHdlrBestsol(scip) ); SCIP_CALL( SCIPincludeEventHdlrBoundwriting(scip) ); /********************************** * Process command line arguments * **********************************/ SCIP_CALL( SCIPprocessShellArguments(scip, argc, argv, defaultsetname) ); /******************** * Deinitialization * ********************/ SCIP_CALL( SCIPfree(&scip) ); /* check block memory */ BMScheckEmptyMemory(); return SCIP_OKAY; }