xref: /petsc/src/sys/classes/draw/interface/dpause.c (revision dbbe0bcd3f3a8fbab5a45420dc06f8387e5764c6)
15c6c1daeSBarry Smith /*
25c6c1daeSBarry Smith        Provides the calling sequences for all the basic PetscDraw routines.
35c6c1daeSBarry Smith */
4af0996ceSBarry Smith #include <petsc/private/drawimpl.h>  /*I "petscdraw.h" I*/
55c6c1daeSBarry Smith 
65c6c1daeSBarry Smith /*@
75c6c1daeSBarry Smith    PetscDrawPause - Waits n seconds or until user input, depending on input
85c6c1daeSBarry Smith                to PetscDrawSetPause().
95c6c1daeSBarry Smith 
105c6c1daeSBarry Smith    Collective operation on PetscDraw object.
115c6c1daeSBarry Smith 
125c6c1daeSBarry Smith    Input Parameter:
135c6c1daeSBarry Smith .  draw - the drawing context
145c6c1daeSBarry Smith 
155c6c1daeSBarry Smith    Level: beginner
165c6c1daeSBarry Smith 
17db781477SPatrick Sanan .seealso: `PetscDrawSetPause()`, `PetscDrawGetPause()`
185c6c1daeSBarry Smith @*/
195c6c1daeSBarry Smith PetscErrorCode  PetscDrawPause(PetscDraw draw)
205c6c1daeSBarry Smith {
215c6c1daeSBarry Smith   PetscFunctionBegin;
225c6c1daeSBarry Smith   PetscValidHeaderSpecific(draw,PETSC_DRAW_CLASSID,1);
23*dbbe0bcdSBarry Smith   PetscTryTypeMethod(draw,pause);
245c6c1daeSBarry Smith   PetscFunctionReturn(0);
255c6c1daeSBarry Smith }
268f69470aSLisandro Dalcin 
278f69470aSLisandro Dalcin /*@
288f69470aSLisandro Dalcin    PetscDrawSetPause - Sets the amount of time that program pauses after
298f69470aSLisandro Dalcin    a PetscDrawPause() is called.
308f69470aSLisandro Dalcin 
318f69470aSLisandro Dalcin    Logically Collective on PetscDraw
328f69470aSLisandro Dalcin 
338f69470aSLisandro Dalcin    Input Parameters:
348f69470aSLisandro Dalcin +  draw   - the drawing object
358f69470aSLisandro Dalcin -  lpause - number of seconds to pause, -1 implies until user input, -2 pauses only on the PetscDrawDestroy()
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 
43db781477SPatrick Sanan .seealso: `PetscDrawGetPause()`, `PetscDrawPause()`
448f69470aSLisandro Dalcin @*/
458f69470aSLisandro Dalcin PetscErrorCode  PetscDrawSetPause(PetscDraw draw,PetscReal lpause)
468f69470aSLisandro Dalcin {
478f69470aSLisandro Dalcin   PetscFunctionBegin;
488f69470aSLisandro Dalcin   PetscValidHeaderSpecific(draw,PETSC_DRAW_CLASSID,1);
498f69470aSLisandro Dalcin   PetscValidLogicalCollectiveReal(draw,lpause,2);
508f69470aSLisandro Dalcin   draw->pause = lpause;
518f69470aSLisandro Dalcin   PetscFunctionReturn(0);
528f69470aSLisandro Dalcin }
538f69470aSLisandro Dalcin 
548f69470aSLisandro Dalcin /*@
558f69470aSLisandro Dalcin    PetscDrawGetPause - Gets the amount of time that program pauses after
568f69470aSLisandro Dalcin    a PetscDrawPause() is called.
578f69470aSLisandro Dalcin 
588f69470aSLisandro Dalcin    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 
69db781477SPatrick Sanan .seealso: `PetscDrawSetPause()`, `PetscDrawPause()`
708f69470aSLisandro Dalcin @*/
718f69470aSLisandro Dalcin PetscErrorCode  PetscDrawGetPause(PetscDraw draw,PetscReal *lpause)
728f69470aSLisandro Dalcin {
738f69470aSLisandro Dalcin   PetscFunctionBegin;
748f69470aSLisandro Dalcin   PetscValidHeaderSpecific(draw,PETSC_DRAW_CLASSID,1);
75dadcf809SJacob Faibussowitsch   PetscValidRealPointer(lpause,2);
768f69470aSLisandro Dalcin   *lpause = draw->pause;
778f69470aSLisandro Dalcin   PetscFunctionReturn(0);
788f69470aSLisandro Dalcin }
79