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 #undef __FUNCT__ 75c6c1daeSBarry Smith #define __FUNCT__ "PetscDrawPause" 85c6c1daeSBarry Smith /*@ 95c6c1daeSBarry Smith PetscDrawPause - Waits n seconds or until user input, depending on input 105c6c1daeSBarry Smith to PetscDrawSetPause(). 115c6c1daeSBarry Smith 125c6c1daeSBarry Smith Collective operation on PetscDraw object. 135c6c1daeSBarry Smith 145c6c1daeSBarry Smith Input Parameter: 155c6c1daeSBarry Smith . draw - the drawing context 165c6c1daeSBarry Smith 175c6c1daeSBarry Smith Level: beginner 185c6c1daeSBarry Smith 195c6c1daeSBarry Smith Concepts: waiting^for user input 205c6c1daeSBarry Smith Concepts: drawing^waiting 215c6c1daeSBarry Smith Concepts: graphics^waiting 225c6c1daeSBarry Smith 235c6c1daeSBarry Smith .seealso: PetscDrawSetPause(), PetscDrawGetPause() 245c6c1daeSBarry Smith @*/ 255c6c1daeSBarry Smith PetscErrorCode PetscDrawPause(PetscDraw draw) 265c6c1daeSBarry Smith { 275c6c1daeSBarry Smith PetscErrorCode ierr; 285fd66863SKarl Rupp 295c6c1daeSBarry Smith PetscFunctionBegin; 305c6c1daeSBarry Smith PetscValidHeaderSpecific(draw,PETSC_DRAW_CLASSID,1); 315c6c1daeSBarry Smith if (draw->ops->pause) { 325c6c1daeSBarry Smith ierr = (*draw->ops->pause)(draw);CHKERRQ(ierr); 335c6c1daeSBarry Smith } 345c6c1daeSBarry Smith PetscFunctionReturn(0); 355c6c1daeSBarry Smith } 36*8f69470aSLisandro Dalcin 37*8f69470aSLisandro Dalcin #undef __FUNCT__ 38*8f69470aSLisandro Dalcin #define __FUNCT__ "PetscDrawSetPause" 39*8f69470aSLisandro Dalcin /*@ 40*8f69470aSLisandro Dalcin PetscDrawSetPause - Sets the amount of time that program pauses after 41*8f69470aSLisandro Dalcin a PetscDrawPause() is called. 42*8f69470aSLisandro Dalcin 43*8f69470aSLisandro Dalcin Logically Collective on PetscDraw 44*8f69470aSLisandro Dalcin 45*8f69470aSLisandro Dalcin Input Parameters: 46*8f69470aSLisandro Dalcin + draw - the drawing object 47*8f69470aSLisandro Dalcin - lpause - number of seconds to pause, -1 implies until user input, -2 pauses only on the PetscDrawDestroy() 48*8f69470aSLisandro Dalcin 49*8f69470aSLisandro Dalcin Level: intermediate 50*8f69470aSLisandro Dalcin 51*8f69470aSLisandro Dalcin Note: 52*8f69470aSLisandro Dalcin By default the pause time is zero unless the -draw_pause option is given 53*8f69470aSLisandro Dalcin during PetscDrawCreate(). 54*8f69470aSLisandro Dalcin 55*8f69470aSLisandro Dalcin Concepts: drawing^waiting 56*8f69470aSLisandro Dalcin 57*8f69470aSLisandro Dalcin .seealso: PetscDrawGetPause(), PetscDrawPause() 58*8f69470aSLisandro Dalcin @*/ 59*8f69470aSLisandro Dalcin PetscErrorCode PetscDrawSetPause(PetscDraw draw,PetscReal lpause) 60*8f69470aSLisandro Dalcin { 61*8f69470aSLisandro Dalcin PetscFunctionBegin; 62*8f69470aSLisandro Dalcin PetscValidHeaderSpecific(draw,PETSC_DRAW_CLASSID,1); 63*8f69470aSLisandro Dalcin PetscValidLogicalCollectiveReal(draw,lpause,2); 64*8f69470aSLisandro Dalcin draw->pause = lpause; 65*8f69470aSLisandro Dalcin PetscFunctionReturn(0); 66*8f69470aSLisandro Dalcin } 67*8f69470aSLisandro Dalcin 68*8f69470aSLisandro Dalcin #undef __FUNCT__ 69*8f69470aSLisandro Dalcin #define __FUNCT__ "PetscDrawGetPause" 70*8f69470aSLisandro Dalcin /*@ 71*8f69470aSLisandro Dalcin PetscDrawGetPause - Gets the amount of time that program pauses after 72*8f69470aSLisandro Dalcin a PetscDrawPause() is called. 73*8f69470aSLisandro Dalcin 74*8f69470aSLisandro Dalcin Not collective 75*8f69470aSLisandro Dalcin 76*8f69470aSLisandro Dalcin Input Parameters: 77*8f69470aSLisandro Dalcin + draw - the drawing object 78*8f69470aSLisandro Dalcin - lpause - number of seconds to pause, -1 implies until user input 79*8f69470aSLisandro Dalcin 80*8f69470aSLisandro Dalcin Level: intermediate 81*8f69470aSLisandro Dalcin 82*8f69470aSLisandro Dalcin Note: 83*8f69470aSLisandro Dalcin By default the pause time is zero unless the -draw_pause option is given 84*8f69470aSLisandro Dalcin 85*8f69470aSLisandro Dalcin Concepts: waiting^for user input 86*8f69470aSLisandro Dalcin Concepts: drawing^waiting 87*8f69470aSLisandro Dalcin Concepts: graphics^waiting 88*8f69470aSLisandro Dalcin 89*8f69470aSLisandro Dalcin .seealso: PetscDrawSetPause(), PetscDrawPause() 90*8f69470aSLisandro Dalcin @*/ 91*8f69470aSLisandro Dalcin PetscErrorCode PetscDrawGetPause(PetscDraw draw,PetscReal *lpause) 92*8f69470aSLisandro Dalcin { 93*8f69470aSLisandro Dalcin PetscFunctionBegin; 94*8f69470aSLisandro Dalcin PetscValidHeaderSpecific(draw,PETSC_DRAW_CLASSID,1); 95*8f69470aSLisandro Dalcin PetscValidPointer(lpause,2); 96*8f69470aSLisandro Dalcin *lpause = draw->pause; 97*8f69470aSLisandro Dalcin PetscFunctionReturn(0); 98*8f69470aSLisandro Dalcin } 99