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 /*@ 75b399a63SLisandro Dalcin PetscDrawClear - Clears graphical output. All processors must call this routine. 88f69470aSLisandro Dalcin Does not return until the draw in context is clear. 98f69470aSLisandro Dalcin 108f69470aSLisandro Dalcin Collective on PetscDraw 118f69470aSLisandro Dalcin 128f69470aSLisandro Dalcin Input Parameters: 138f69470aSLisandro Dalcin . draw - the drawing context 148f69470aSLisandro Dalcin 158f69470aSLisandro Dalcin Level: intermediate 168f69470aSLisandro Dalcin 178f69470aSLisandro Dalcin @*/ 185b399a63SLisandro Dalcin PetscErrorCode PetscDrawClear(PetscDraw draw) 198f69470aSLisandro Dalcin { 208f69470aSLisandro Dalcin PetscFunctionBegin; 218f69470aSLisandro Dalcin PetscValidHeaderSpecific(draw,PETSC_DRAW_CLASSID,1); 22*9566063dSJacob Faibussowitsch if (draw->saveonclear) PetscCall(PetscDrawSave(draw)); 235b399a63SLisandro Dalcin if (draw->ops->clear) { 24*9566063dSJacob Faibussowitsch PetscCall((*draw->ops->clear)(draw)); 258f69470aSLisandro Dalcin } 268f69470aSLisandro Dalcin PetscFunctionReturn(0); 278f69470aSLisandro Dalcin } 288f69470aSLisandro Dalcin 295c6c1daeSBarry Smith /*@ 305c6c1daeSBarry Smith PetscDrawBOP - Begins a new page or frame on the selected graphical device. 315c6c1daeSBarry Smith 325c6c1daeSBarry Smith Logically Collective on PetscDraw 335c6c1daeSBarry Smith 345c6c1daeSBarry Smith Input Parameter: 355c6c1daeSBarry Smith . draw - the drawing context 365c6c1daeSBarry Smith 375c6c1daeSBarry Smith Level: advanced 385c6c1daeSBarry Smith 395c6c1daeSBarry Smith .seealso: PetscDrawEOP(), PetscDrawClear() 405c6c1daeSBarry Smith @*/ 415c6c1daeSBarry Smith PetscErrorCode PetscDrawBOP(PetscDraw draw) 425c6c1daeSBarry Smith { 435c6c1daeSBarry Smith PetscFunctionBegin; 445c6c1daeSBarry Smith PetscValidHeaderSpecific(draw,PETSC_DRAW_CLASSID,1); 455c6c1daeSBarry Smith if (draw->ops->beginpage) { 46*9566063dSJacob Faibussowitsch PetscCall((*draw->ops->beginpage)(draw)); 475c6c1daeSBarry Smith } 485c6c1daeSBarry Smith PetscFunctionReturn(0); 495c6c1daeSBarry Smith } 505c6c1daeSBarry Smith /*@ 515c6c1daeSBarry Smith PetscDrawEOP - Ends a page or frame on the selected graphical device. 525c6c1daeSBarry Smith 535c6c1daeSBarry Smith Logically Collective on PetscDraw 545c6c1daeSBarry Smith 555c6c1daeSBarry Smith Input Parameter: 565c6c1daeSBarry Smith . draw - the drawing context 575c6c1daeSBarry Smith 585c6c1daeSBarry Smith Level: advanced 595c6c1daeSBarry Smith 605c6c1daeSBarry Smith .seealso: PetscDrawBOP(), PetscDrawClear() 615c6c1daeSBarry Smith @*/ 625c6c1daeSBarry Smith PetscErrorCode PetscDrawEOP(PetscDraw draw) 635c6c1daeSBarry Smith { 645c6c1daeSBarry Smith PetscFunctionBegin; 655c6c1daeSBarry Smith PetscValidHeaderSpecific(draw,PETSC_DRAW_CLASSID,1); 665c6c1daeSBarry Smith if (draw->ops->endpage) { 67*9566063dSJacob Faibussowitsch PetscCall((*draw->ops->endpage)(draw)); 685c6c1daeSBarry Smith } 695c6c1daeSBarry Smith PetscFunctionReturn(0); 705c6c1daeSBarry Smith } 71