1af0996ceSBarry Smith #include <petsc/private/drawimpl.h> /*I "petscdraw.h" I*/
25c6c1daeSBarry Smith
35c6c1daeSBarry Smith /*@
45c6c1daeSBarry Smith PetscDrawPause - Waits n seconds or until user input, depending on input
5811af0c4SBarry Smith to `PetscDrawSetPause()`.
65c6c1daeSBarry Smith
7c3339decSBarry Smith Collective
85c6c1daeSBarry Smith
95c6c1daeSBarry Smith Input Parameter:
105c6c1daeSBarry Smith . draw - the drawing context
115c6c1daeSBarry Smith
125c6c1daeSBarry Smith Level: beginner
135c6c1daeSBarry Smith
14811af0c4SBarry Smith .seealso: `PetscDraw`, `PetscDrawSetPause()`, `PetscDrawGetPause()`
155c6c1daeSBarry Smith @*/
PetscDrawPause(PetscDraw draw)16d71ae5a4SJacob Faibussowitsch PetscErrorCode PetscDrawPause(PetscDraw draw)
17d71ae5a4SJacob Faibussowitsch {
185c6c1daeSBarry Smith PetscFunctionBegin;
195c6c1daeSBarry Smith PetscValidHeaderSpecific(draw, PETSC_DRAW_CLASSID, 1);
20dbbe0bcdSBarry Smith PetscTryTypeMethod(draw, pause);
213ba16761SJacob Faibussowitsch PetscFunctionReturn(PETSC_SUCCESS);
225c6c1daeSBarry Smith }
238f69470aSLisandro Dalcin
248f69470aSLisandro Dalcin /*@
258f69470aSLisandro Dalcin PetscDrawSetPause - Sets the amount of time that program pauses after
26811af0c4SBarry Smith a `PetscDrawPause()` is called.
278f69470aSLisandro Dalcin
28c3339decSBarry Smith Logically Collective
298f69470aSLisandro Dalcin
308f69470aSLisandro Dalcin Input Parameters:
318f69470aSLisandro Dalcin + draw - the drawing object
32811af0c4SBarry Smith - lpause - number of seconds to pause, -1 implies until user input, -2 pauses only on the `PetscDrawDestroy()`
33811af0c4SBarry Smith
34811af0c4SBarry Smith Options Database Key:
35811af0c4SBarry Smith . -draw_pause value - set the time to pause
368f69470aSLisandro Dalcin
378f69470aSLisandro Dalcin Level: intermediate
388f69470aSLisandro Dalcin
398f69470aSLisandro Dalcin Note:
408f69470aSLisandro Dalcin By default the pause time is zero unless the -draw_pause option is given
418f69470aSLisandro Dalcin during PetscDrawCreate().
428f69470aSLisandro Dalcin
43811af0c4SBarry Smith .seealso: `PetscDraw`, `PetscDrawGetPause()`, `PetscDrawPause()`
448f69470aSLisandro Dalcin @*/
PetscDrawSetPause(PetscDraw draw,PetscReal lpause)45d71ae5a4SJacob Faibussowitsch PetscErrorCode PetscDrawSetPause(PetscDraw draw, PetscReal lpause)
46d71ae5a4SJacob Faibussowitsch {
478f69470aSLisandro Dalcin PetscFunctionBegin;
488f69470aSLisandro Dalcin PetscValidHeaderSpecific(draw, PETSC_DRAW_CLASSID, 1);
498f69470aSLisandro Dalcin PetscValidLogicalCollectiveReal(draw, lpause, 2);
508f69470aSLisandro Dalcin draw->pause = lpause;
513ba16761SJacob Faibussowitsch PetscFunctionReturn(PETSC_SUCCESS);
528f69470aSLisandro Dalcin }
538f69470aSLisandro Dalcin
548f69470aSLisandro Dalcin /*@
558f69470aSLisandro Dalcin PetscDrawGetPause - Gets the amount of time that program pauses after
56811af0c4SBarry Smith a `PetscDrawPause()` is called.
578f69470aSLisandro Dalcin
5820f4b53cSBarry Smith Not Collective
598f69470aSLisandro Dalcin
608f69470aSLisandro Dalcin Input Parameters:
618f69470aSLisandro Dalcin + draw - the drawing object
628f69470aSLisandro Dalcin - lpause - number of seconds to pause, -1 implies until user input
638f69470aSLisandro Dalcin
648f69470aSLisandro Dalcin Level: intermediate
658f69470aSLisandro Dalcin
668f69470aSLisandro Dalcin Note:
678f69470aSLisandro Dalcin By default the pause time is zero unless the -draw_pause option is given
688f69470aSLisandro Dalcin
69811af0c4SBarry Smith .seealso: `PetscDraw`, `PetscDrawSetPause()`, `PetscDrawPause()`
708f69470aSLisandro Dalcin @*/
PetscDrawGetPause(PetscDraw draw,PetscReal * lpause)71d71ae5a4SJacob Faibussowitsch PetscErrorCode PetscDrawGetPause(PetscDraw draw, PetscReal *lpause)
72d71ae5a4SJacob Faibussowitsch {
738f69470aSLisandro Dalcin PetscFunctionBegin;
748f69470aSLisandro Dalcin PetscValidHeaderSpecific(draw, PETSC_DRAW_CLASSID, 1);
75*4f572ea9SToby Isaac PetscAssertPointer(lpause, 2);
768f69470aSLisandro Dalcin *lpause = draw->pause;
773ba16761SJacob Faibussowitsch PetscFunctionReturn(PETSC_SUCCESS);
788f69470aSLisandro Dalcin }
79