59 #define dialogCopyObj NULL
64 SCIP_DIALOGDATA* dialogdata;
66 dialogdata = SCIPdialogGetData(dialog);
67 assert(dialogdata != 0);
68 assert(dialogdata->objdialog != 0);
69 assert(dialogdata->objdialog->scip_ == scip);
72 SCIP_CALL( dialogdata->objdialog->scip_free(scip, dialog) );
75 if( dialogdata->deleteobject )
76 delete dialogdata->objdialog;
80 SCIPdialogSetData(dialog, 0);
90 SCIP_DIALOGDATA* dialogdata;
92 dialogdata = SCIPdialogGetData(dialog);
93 assert(dialogdata != 0);
94 assert(dialogdata->objdialog != 0);
95 assert(dialogdata->objdialog->scip_ == scip);
98 SCIP_CALL( dialogdata->objdialog->scip_desc(scip, dialog) );
107 SCIP_DIALOGDATA* dialogdata;
109 dialogdata = SCIPdialogGetData(dialog);
110 assert(dialogdata != 0);
111 assert(dialogdata->objdialog != 0);
114 SCIP_CALL( dialogdata->objdialog->scip_exec(scip, dialog, dialoghdlr, nextdialog) );
129 SCIP_DIALOG* parentdialog,
131 SCIP_Bool deleteobject
135 assert(objdialog != 0);
136 assert(parentdialog != 0);
139 if( !SCIPdialogHasEntry(parentdialog, objdialog->
scip_name_) )
141 SCIP_DIALOGDATA* dialogdata;
143 SCIP_RETCODE retcode;
148 dialogdata =
new SCIP_DIALOGDATA;
149 dialogdata->objdialog = objdialog;
150 dialogdata->deleteobject = deleteobject;
152 retcode = SCIPincludeDialog(scip, &dialog,
dialogCopyObj, dialogExecObj, dialogDescObj, dialogFreeObj,
154 if( retcode != SCIP_OKAY )
157 SCIP_CALL( retcode );
159 SCIP_CALL( SCIPaddDialogEntry(scip, parentdialog, dialog) );
160 SCIP_CALL( SCIPreleaseDialog(scip, &dialog) );