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 @*/ 19*9371c9d4SSatish Balay PetscErrorCode PetscDrawPause(PetscDraw draw) { 205c6c1daeSBarry Smith PetscFunctionBegin; 215c6c1daeSBarry Smith PetscValidHeaderSpecific(draw, PETSC_DRAW_CLASSID, 1); 22dbbe0bcdSBarry Smith PetscTryTypeMethod(draw, pause); 235c6c1daeSBarry Smith PetscFunctionReturn(0); 245c6c1daeSBarry Smith } 258f69470aSLisandro Dalcin 268f69470aSLisandro Dalcin /*@ 278f69470aSLisandro Dalcin PetscDrawSetPause - Sets the amount of time that program pauses after 288f69470aSLisandro Dalcin a PetscDrawPause() is called. 298f69470aSLisandro Dalcin 308f69470aSLisandro Dalcin Logically Collective on PetscDraw 318f69470aSLisandro Dalcin 328f69470aSLisandro Dalcin Input Parameters: 338f69470aSLisandro Dalcin + draw - the drawing object 348f69470aSLisandro Dalcin - lpause - number of seconds to pause, -1 implies until user input, -2 pauses only on the PetscDrawDestroy() 358f69470aSLisandro Dalcin 368f69470aSLisandro Dalcin Level: intermediate 378f69470aSLisandro Dalcin 388f69470aSLisandro Dalcin Note: 398f69470aSLisandro Dalcin By default the pause time is zero unless the -draw_pause option is given 408f69470aSLisandro Dalcin during PetscDrawCreate(). 418f69470aSLisandro Dalcin 42db781477SPatrick Sanan .seealso: `PetscDrawGetPause()`, `PetscDrawPause()` 438f69470aSLisandro Dalcin @*/ 44*9371c9d4SSatish Balay PetscErrorCode PetscDrawSetPause(PetscDraw draw, PetscReal lpause) { 458f69470aSLisandro Dalcin PetscFunctionBegin; 468f69470aSLisandro Dalcin PetscValidHeaderSpecific(draw, PETSC_DRAW_CLASSID, 1); 478f69470aSLisandro Dalcin PetscValidLogicalCollectiveReal(draw, lpause, 2); 488f69470aSLisandro Dalcin draw->pause = lpause; 498f69470aSLisandro Dalcin PetscFunctionReturn(0); 508f69470aSLisandro Dalcin } 518f69470aSLisandro Dalcin 528f69470aSLisandro Dalcin /*@ 538f69470aSLisandro Dalcin PetscDrawGetPause - Gets the amount of time that program pauses after 548f69470aSLisandro Dalcin a PetscDrawPause() is called. 558f69470aSLisandro Dalcin 568f69470aSLisandro Dalcin Not collective 578f69470aSLisandro Dalcin 588f69470aSLisandro Dalcin Input Parameters: 598f69470aSLisandro Dalcin + draw - the drawing object 608f69470aSLisandro Dalcin - lpause - number of seconds to pause, -1 implies until user input 618f69470aSLisandro Dalcin 628f69470aSLisandro Dalcin Level: intermediate 638f69470aSLisandro Dalcin 648f69470aSLisandro Dalcin Note: 658f69470aSLisandro Dalcin By default the pause time is zero unless the -draw_pause option is given 668f69470aSLisandro Dalcin 67db781477SPatrick Sanan .seealso: `PetscDrawSetPause()`, `PetscDrawPause()` 688f69470aSLisandro Dalcin @*/ 69*9371c9d4SSatish Balay PetscErrorCode PetscDrawGetPause(PetscDraw draw, PetscReal *lpause) { 708f69470aSLisandro Dalcin PetscFunctionBegin; 718f69470aSLisandro Dalcin PetscValidHeaderSpecific(draw, PETSC_DRAW_CLASSID, 1); 72dadcf809SJacob Faibussowitsch PetscValidRealPointer(lpause, 2); 738f69470aSLisandro Dalcin *lpause = draw->pause; 748f69470aSLisandro Dalcin PetscFunctionReturn(0); 758f69470aSLisandro Dalcin } 76