xref: /petsc/src/sys/classes/viewer/tests/ex7.c (revision 09222b14142ceaf2171009ab1b8ed257feccc12b)
1*09222b14SToby Isaac const char help[] = "Test PetscOptionsGetViewers()";
2*09222b14SToby Isaac 
3*09222b14SToby Isaac #include <petscviewer.h>
4*09222b14SToby Isaac 
5*09222b14SToby Isaac #define N_MAX 5
6*09222b14SToby Isaac 
7*09222b14SToby Isaac int main(int argc, char **argv)
8*09222b14SToby Isaac {
9*09222b14SToby Isaac   PetscInt          n_max = N_MAX;
10*09222b14SToby Isaac   PetscViewer       viewers[N_MAX];
11*09222b14SToby Isaac   PetscViewerFormat formats[N_MAX];
12*09222b14SToby Isaac 
13*09222b14SToby Isaac   PetscCall(PetscInitialize(&argc, &argv, NULL, help));
14*09222b14SToby Isaac   PetscCall(PetscOptionsGetViewers(PETSC_COMM_WORLD, NULL, NULL, "-test_view", &n_max, viewers, formats, NULL));
15*09222b14SToby Isaac   for (PetscInt i = 0; i < n_max; i++) {
16*09222b14SToby Isaac     PetscCall(PetscViewerPushFormat(viewers[i], formats[i]));
17*09222b14SToby Isaac     PetscCall(PetscViewerASCIIPrintf(viewers[i], "This is viewer %d\n", (int)i));
18*09222b14SToby Isaac     PetscCall(PetscViewerPopFormat(viewers[i]));
19*09222b14SToby Isaac     PetscCall(PetscViewerDestroy(&viewers[i]));
20*09222b14SToby Isaac   }
21*09222b14SToby Isaac   PetscCall(PetscFinalize());
22*09222b14SToby Isaac   return 0;
23*09222b14SToby Isaac }
24*09222b14SToby Isaac 
25*09222b14SToby Isaac /*TEST
26*09222b14SToby Isaac 
27*09222b14SToby Isaac   test:
28*09222b14SToby Isaac     suffix: 0
29*09222b14SToby Isaac     args: -test_view ascii:viewer0.txt,ascii:viewer1.txt
30*09222b14SToby Isaac     filter: cat viewer0.txt viewer1.txt
31*09222b14SToby Isaac 
32*09222b14SToby Isaac   test:
33*09222b14SToby Isaac     suffix: 1
34*09222b14SToby Isaac     args: -test_view ,,,ascii:viewer3.txt,
35*09222b14SToby Isaac 
36*09222b14SToby Isaac   test:
37*09222b14SToby Isaac     suffix: 2
38*09222b14SToby Isaac     args: -test_view ,,,ascii:viewer3.txt,
39*09222b14SToby Isaac     filter: cat viewer3.txt
40*09222b14SToby Isaac 
41*09222b14SToby Isaac TEST*/
42