1*447bcd8fSJacob Faibussowitsch #include <petsc/private/drawimpl.h> 2*447bcd8fSJacob Faibussowitsch #include <petsc/private/viewerimpl.h> 3*447bcd8fSJacob Faibussowitsch #include <petsc/private/randomimpl.h> 4064a246eSJacob Faibussowitsch 5*447bcd8fSJacob Faibussowitsch #ifndef DMDA 6*447bcd8fSJacob Faibussowitsch #define DMDA "da" 7*447bcd8fSJacob Faibussowitsch #endif 8*447bcd8fSJacob Faibussowitsch 9*447bcd8fSJacob Faibussowitsch PetscErrorCode testValidHeaders(PetscRandom r, PetscViewer v, PetscDraw d, PetscDrawAxis a) 10d71ae5a4SJacob Faibussowitsch { 11064a246eSJacob Faibussowitsch /* incorrect */ 12064a246eSJacob Faibussowitsch PetscValidHeaderSpecificType(r, PETSC_VIEWER_CLASSID, 0, DMDA); 13064a246eSJacob Faibussowitsch PetscValidHeaderSpecificType(v, PETSC_DRAW_CLASSID, 0, DMDA); 14064a246eSJacob Faibussowitsch PetscValidHeaderSpecificType(d, PETSC_DRAWAXIS_CLASSID, 0, DMDA); 15064a246eSJacob Faibussowitsch PetscValidHeaderSpecificType(a, PETSC_RANDOM_CLASSID, 0, DMDA); 16064a246eSJacob Faibussowitsch 17064a246eSJacob Faibussowitsch /* correct */ 18064a246eSJacob Faibussowitsch PetscValidHeaderSpecificType(r, PETSC_RANDOM_CLASSID, 1, DMDA); 19064a246eSJacob Faibussowitsch PetscValidHeaderSpecificType(v, PETSC_VIEWER_CLASSID, 2, DMDA); 20064a246eSJacob Faibussowitsch PetscValidHeaderSpecificType(d, PETSC_DRAW_CLASSID, 3, DMDA); 21064a246eSJacob Faibussowitsch PetscValidHeaderSpecificType(a, PETSC_DRAWAXIS_CLASSID, 4, DMDA); 22064a246eSJacob Faibussowitsch 23064a246eSJacob Faibussowitsch /* incorrect */ 24064a246eSJacob Faibussowitsch PetscValidHeaderSpecific(r, PETSC_DRAW_CLASSID, 0); 25064a246eSJacob Faibussowitsch PetscValidHeaderSpecific(v, PETSC_DRAWAXIS_CLASSID, 0); 26064a246eSJacob Faibussowitsch PetscValidHeaderSpecific(d, PETSC_RANDOM_CLASSID, 0); 27064a246eSJacob Faibussowitsch PetscValidHeaderSpecific(a, PETSC_VIEWER_CLASSID, 0); 28064a246eSJacob Faibussowitsch 29064a246eSJacob Faibussowitsch /* correct */ 30064a246eSJacob Faibussowitsch PetscValidHeaderSpecific(r, PETSC_RANDOM_CLASSID, 1); 31064a246eSJacob Faibussowitsch PetscValidHeaderSpecific(v, PETSC_VIEWER_CLASSID, 2); 32064a246eSJacob Faibussowitsch PetscValidHeaderSpecific(d, PETSC_DRAW_CLASSID, 3); 33064a246eSJacob Faibussowitsch PetscValidHeaderSpecific(a, PETSC_DRAWAXIS_CLASSID, 4); 34064a246eSJacob Faibussowitsch 35064a246eSJacob Faibussowitsch /* incorrect */ 36064a246eSJacob Faibussowitsch PetscValidHeader(r, 55); 37064a246eSJacob Faibussowitsch PetscValidHeader(v, 56); 38064a246eSJacob Faibussowitsch PetscValidHeader(d, 57); 39064a246eSJacob Faibussowitsch PetscValidHeader(a, 58); 40064a246eSJacob Faibussowitsch 41064a246eSJacob Faibussowitsch /* correct */ 42064a246eSJacob Faibussowitsch PetscValidHeader(r, 1); 43064a246eSJacob Faibussowitsch PetscValidHeader(v, 2); 44064a246eSJacob Faibussowitsch PetscValidHeader(d, 3); 45064a246eSJacob Faibussowitsch PetscValidHeader(a, 4); 46*447bcd8fSJacob Faibussowitsch return 0; 47064a246eSJacob Faibussowitsch } 48