Scippy

SCIP

Solving Constraint Integer Programs

pub_dialog.h File Reference

Detailed Description

public methods for user interface dialog

Author
Tobias Achterberg

Definition in file pub_dialog.h.

#include "scip/def.h"
#include "scip/type_retcode.h"
#include "scip/type_scip.h"
#include "scip/type_dialog.h"

Go to the source code of this file.

Functions

SCIP_DIALOGSCIPdialoghdlrGetRoot (SCIP_DIALOGHDLR *dialoghdlr)
 
void SCIPdialoghdlrClearBuffer (SCIP_DIALOGHDLR *dialoghdlr)
 
SCIP_Bool SCIPdialoghdlrIsBufferEmpty (SCIP_DIALOGHDLR *dialoghdlr)
 
SCIP_RETCODE SCIPdialoghdlrGetWord (SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog, const char *prompt, char **inputword, SCIP_Bool *endoffile)
 
SCIP_RETCODE SCIPdialoghdlrAddInputLine (SCIP_DIALOGHDLR *dialoghdlr, const char *inputline)
 
SCIP_RETCODE SCIPdialoghdlrAddHistory (SCIP_DIALOGHDLR *dialoghdlr, SCIP_DIALOG *dialog, const char *command, SCIP_Bool escapecommand)
 
SCIP_Bool SCIPdialogHasEntry (SCIP_DIALOG *dialog, const char *entryname)
 
int SCIPdialogFindEntry (SCIP_DIALOG *dialog, const char *entryname, SCIP_DIALOG **subdialog)
 
SCIP_RETCODE SCIPdialogDisplayMenu (SCIP_DIALOG *dialog, SCIP *scip)
 
SCIP_RETCODE SCIPdialogDisplayMenuEntry (SCIP_DIALOG *dialog, SCIP *scip)
 
SCIP_RETCODE SCIPdialogDisplayCompletions (SCIP_DIALOG *dialog, SCIP *scip, const char *entryname)
 
void SCIPdialogGetPath (SCIP_DIALOG *dialog, const char sepchar, char *path)
 
const char * SCIPdialogGetName (SCIP_DIALOG *dialog)
 
const char * SCIPdialogGetDesc (SCIP_DIALOG *dialog)
 
SCIP_Bool SCIPdialogIsSubmenu (SCIP_DIALOG *dialog)
 
SCIP_DIALOGSCIPdialogGetParent (SCIP_DIALOG *dialog)
 
SCIP_DIALOG ** SCIPdialogGetSubdialogs (SCIP_DIALOG *dialog)
 
int SCIPdialogGetNSubdialogs (SCIP_DIALOG *dialog)
 
SCIP_DIALOGDATASCIPdialogGetData (SCIP_DIALOG *dialog)
 
void SCIPdialogSetData (SCIP_DIALOG *dialog, SCIP_DIALOGDATA *dialogdata)
 

Function Documentation

SCIP_DIALOG* SCIPdialoghdlrGetRoot ( SCIP_DIALOGHDLR dialoghdlr)

returns the root dialog of the dialog handler

Parameters
dialoghdlrdialog handler

Definition at line 404 of file dialog.c.

References NULL, and SCIP_Dialoghdlr::rootdialog.

Referenced by dialogExecMenu(), SCIP_DECL_DIALOGEXEC(), SCIPaddDialogEntry(), and SCIPgetRootDialog().

void SCIPdialoghdlrClearBuffer ( SCIP_DIALOGHDLR dialoghdlr)

clears the input command buffer of the dialog handler

Parameters
dialoghdlrdialog handler

Definition at line 414 of file dialog.c.

References SCIP_Dialoghdlr::buffer, SCIP_Dialoghdlr::bufferpos, and NULL.

Referenced by dialogExecMenu(), SCIP_DECL_DIALOGEXEC(), SCIPdialoghdlrCreate(), SCIPdialoghdlrExec(), SCIPdialoghdlrGetWord(), and writeProblem().

SCIP_Bool SCIPdialoghdlrIsBufferEmpty ( SCIP_DIALOGHDLR dialoghdlr)

returns TRUE iff input command buffer is empty

Parameters
dialoghdlrdialog handler

Definition at line 425 of file dialog.c.

References SCIP_Dialoghdlr::buffer, SCIP_Dialoghdlr::bufferpos, SCIP_Dialoghdlr::buffersize, and NULL.

Referenced by SCIP_DECL_DIALOGEXEC(), and SCIPdialoghdlrGetWord().

SCIP_RETCODE SCIPdialoghdlrGetWord ( SCIP_DIALOGHDLR dialoghdlr,
SCIP_DIALOG dialog,
const char *  prompt,
char **  inputword,
SCIP_Bool endoffile 
)

returns the next word in the handler's command buffer; if the buffer is empty, displays the given prompt or the current dialog's path and asks the user for further input; the user must not free or modify the returned string

Parameters
dialoghdlrdialog handler
dialogcurrent dialog
promptprompt to display, or NULL to display the current dialog's path
inputwordpointer to store the next word in the handler's command buffer
endoffilepointer to store whether the end of the input file was reached

Definition at line 438 of file dialog.c.

References SCIP_Dialoghdlr::buffer, SCIP_Dialoghdlr::bufferpos, SCIP_Dialoghdlr::buffersize, FALSE, NULL, readInputLine(), SCIP_CALL, SCIP_MAXSTRLEN, SCIP_OKAY, SCIPdebugMessage, SCIPdialogGetPath(), SCIPdialoghdlrAddHistory(), SCIPdialoghdlrClearBuffer(), SCIPdialoghdlrIsBufferEmpty(), and SCIPsnprintf().

Referenced by dialogExecMenu(), SCIP_DECL_DIALOGEXEC(), and writeProblem().

SCIP_RETCODE SCIPdialoghdlrAddInputLine ( SCIP_DIALOGHDLR dialoghdlr,
const char *  inputline 
)

adds a single line of input to the dialog handler which is treated as if the user entered the command line

Parameters
dialoghdlrdialog handler
inputlineinput line to add

Definition at line 589 of file dialog.c.

References BMSallocMemory, BMSduplicateMemoryArray, SCIP_Linelist::inputline, SCIP_Dialoghdlr::inputlistptr, SCIP_Linelist::nextline, NULL, SCIP_ALLOC, and SCIP_OKAY.

Referenced by SCIPaddDialogInputLine().

SCIP_RETCODE SCIPdialoghdlrAddHistory ( SCIP_DIALOGHDLR dialoghdlr,
SCIP_DIALOG dialog,
const char *  command,
SCIP_Bool  escapecommand 
)

adds a command to the command history of the dialog handler; if a dialog is given, the command is preceeded by the dialog's command path; if no command is given, only the path to the dialog is added to the command history

Parameters
dialoghdlrdialog handler
dialogcurrent dialog, or NULL
commandcommand string to add to the command history, or NULL
escapecommandshould special characters in command be prefixed by an escape char?

Definition at line 613 of file dialog.c.

References addHistory(), getHistoryLength(), SCIP_Dialog::name, SCIP_Dialoghdlr::nprotectedhistelems, NULL, SCIP_Dialog::parent, removeHistory(), SCIP_Dialoghdlr::rootdialog, SCIP_Bool, SCIP_CALL, SCIP_MAXSTRLEN, SCIP_OKAY, SCIPescapeString(), and SCIPsnprintf().

Referenced by SCIP_DECL_DIALOGEXEC(), SCIPaddDialogHistoryLine(), SCIPdialoghdlrGetWord(), and writeProblem().

SCIP_Bool SCIPdialogHasEntry ( SCIP_DIALOG dialog,
const char *  entryname 
)

returns TRUE iff a dialog entry matching exactly the given name is existing in the given dialog

Parameters
dialogdialog
entrynamename of the dialog entry to find

Definition at line 872 of file dialog.c.

References FALSE, NULL, SCIPdialogGetName(), SCIPdialogGetNSubdialogs(), SCIPdialogGetSubdialogs(), and TRUE.

Referenced by addFixParamDialog(), addSetParamDialog(), createCountDialog(), createEmphasisSubmenu(), SCIPdialogAddEntry(), SCIPincludeConshdlrSuperindicator(), SCIPincludeDialogDefault(), SCIPincludeDialogDefaultFix(), SCIPincludeDialogDefaultSet(), and SCIPincludeObjDialog().

int SCIPdialogFindEntry ( SCIP_DIALOG dialog,
const char *  entryname,
SCIP_DIALOG **  subdialog 
)

searches the dialog for entries corresponding to the given name; If a complete match is found, the entry is returned as "subdialog" and the return value is 1. If no dialog entry completely matches the given "entryname", the number of entries with names beginning with "entryname" is returned. If this number is 1, the single match is returned as "subdialog". Otherwise, "subdialog" is set to NULL.

Parameters
dialogdialog
entrynamename of the dialog entry to find
subdialogpointer to store the found dialog entry

Definition at line 905 of file dialog.c.

References NULL, SCIPdialogGetName(), SCIPdialogGetNSubdialogs(), and SCIPdialogGetSubdialogs().

Referenced by addFixParamDialog(), addSetParamDialog(), createCountDialog(), createEmphasisSubmenu(), dialogExecMenu(), SCIPincludeConshdlrSuperindicator(), SCIPincludeDialogDefault(), SCIPincludeDialogDefaultFix(), and SCIPincludeDialogDefaultSet().

SCIP_RETCODE SCIPdialogDisplayMenu ( SCIP_DIALOG dialog,
SCIP scip 
)

displays the dialog's menu

Parameters
dialogdialog
scipSCIP data structure

Definition at line 949 of file dialog.c.

References SCIP_Dialog::nsubdialogs, NULL, SCIP_CALL, SCIP_OKAY, SCIPdialogDisplayMenuEntry(), SCIPdialogIsSubmenu(), SCIPdialogMessage(), and SCIP_Dialog::subdialogs.

Referenced by SCIP_DECL_DIALOGEXEC().

SCIP_RETCODE SCIPdialogDisplayMenuEntry ( SCIP_DIALOG dialog,
SCIP scip 
)

displays the entry for the dialog in it's parent's menu

Parameters
dialogdialog
scipSCIP data structure

Definition at line 983 of file dialog.c.

References SCIP_Dialog::desc, SCIP_Dialog::issubmenu, SCIP_Dialog::name, NULL, SCIP_CALL, SCIP_MAXSTRLEN, SCIP_OKAY, SCIPdialogMessage(), and SCIPsnprintf().

Referenced by SCIPdialogDisplayCompletions(), and SCIPdialogDisplayMenu().

SCIP_RETCODE SCIPdialogDisplayCompletions ( SCIP_DIALOG dialog,
SCIP scip,
const char *  entryname 
)

displays all dialog entries with names starting with the given "entryname"

Parameters
dialogdialog
scipSCIP data structure
entrynamename of the dialog entry to find

Definition at line 1017 of file dialog.c.

References NULL, SCIP_CALL, SCIP_OKAY, SCIPdialogDisplayMenuEntry(), SCIPdialogGetName(), SCIPdialogGetNSubdialogs(), and SCIPdialogGetSubdialogs().

Referenced by dialogExecMenu().

void SCIPdialogGetPath ( SCIP_DIALOG dialog,
const char  sepchar,
char *  path 
)

gets the name of the current path in the dialog tree, separated by the given character

Parameters
dialogdialog
sepcharseparation character to insert in path
pathstring buffer to store the path

Definition at line 1048 of file dialog.c.

References SCIP_Dialog::name, NULL, SCIP_Dialog::parent, SCIP_MAXSTRLEN, and SCIPsnprintf().

Referenced by SCIPdialoghdlrGetWord().

const char* SCIPdialogGetName ( SCIP_DIALOG dialog)

gets the command name of the dialog

Parameters
dialogdialog

Definition at line 1072 of file dialog.c.

References SCIP_Dialog::name, and NULL.

Referenced by SCIP_DECL_SORTPTRCOMP(), SCIPdialogAddEntry(), SCIPdialogCopyInclude(), SCIPdialogDisplayCompletions(), SCIPdialogFindEntry(), and SCIPdialogHasEntry().

const char* SCIPdialogGetDesc ( SCIP_DIALOG dialog)

gets the description of the dialog

Parameters
dialogdialog

Definition at line 1082 of file dialog.c.

References SCIP_Dialog::desc, and NULL.

SCIP_Bool SCIPdialogIsSubmenu ( SCIP_DIALOG dialog)

returns whether the dialog is a sub menu

Parameters
dialogdialog

Definition at line 1092 of file dialog.c.

References SCIP_Dialog::issubmenu, and NULL.

Referenced by SCIPdialogDisplayMenu().

SCIP_DIALOG* SCIPdialogGetParent ( SCIP_DIALOG dialog)

gets the parent dialog of the given dialog

Parameters
dialogdialog

Definition at line 1102 of file dialog.c.

References NULL, and SCIP_Dialog::parent.

Referenced by dialogExecMenu(), and SCIP_DECL_DIALOGEXEC().

SCIP_DIALOG** SCIPdialogGetSubdialogs ( SCIP_DIALOG dialog)

gets the array of sub-dialogs associated with the given dialog

Parameters
dialogdialog

Definition at line 1112 of file dialog.c.

References NULL, and SCIP_Dialog::subdialogs.

Referenced by SCIPdialogDisplayCompletions(), SCIPdialogFindEntry(), and SCIPdialogHasEntry().

int SCIPdialogGetNSubdialogs ( SCIP_DIALOG dialog)

gets the number of sub-dialogs associated with the given dialog

Parameters
dialogdialog

Definition at line 1122 of file dialog.c.

References SCIP_Dialog::nsubdialogs, and NULL.

Referenced by SCIPdialogDisplayCompletions(), SCIPdialogFindEntry(), and SCIPdialogHasEntry().

SCIP_DIALOGDATA* SCIPdialogGetData ( SCIP_DIALOG dialog)

gets the user defined data associated with the given dialog

Parameters
dialogdialog

Definition at line 1132 of file dialog.c.

References SCIP_Dialog::dialogdata, and NULL.

Referenced by SCIP_DECL_DIALOGCOPY(), SCIP_DECL_DIALOGDESC(), SCIP_DECL_DIALOGEXEC(), and SCIP_DECL_DIALOGFREE().

void SCIPdialogSetData ( SCIP_DIALOG dialog,
SCIP_DIALOGDATA dialogdata 
)

sets user data of dialog; user has to free old data in advance!

Parameters
dialogdialog
dialogdatanew dialog user data

Definition at line 1142 of file dialog.c.

References SCIP_Dialog::dialogdata, and NULL.

Referenced by SCIP_DECL_DIALOGFREE().