:orphan:
# PETSC_VIEWER_DRAW_
Creates a window `PETSCVIEWERDRAW` `PetscViewer` shared by all processors in an MPI communicator.
## Synopsis
```
#include "petscdraw.h"
#include "petscviewer.h"
PetscViewer PETSC_VIEWER_DRAW_(MPI_Comm comm)
```
Collective
## Input Parameter
- ***comm -*** the MPI communicator to share the window `PetscViewer`
## Note
Unlike almost all other PETSc routines, `PETSC_VIEWER_DRAW_()` does not return
an error code. The window is usually used in the form
```none
XXXView(XXX object, PETSC_VIEWER_DRAW_(comm));
```
## See Also
[](sec_viewers), `PETSCVIEWERDRAW`, `PetscViewer`, `PETSC_VIEWER_DRAW_WORLD`, `PETSC_VIEWER_DRAW_SELF`, `PetscViewerDrawOpen()`,
## Level
intermediate
## Location
src/sys/classes/viewer/impls/draw/drawv.c
## Examples
src/ts/tutorials/ex2.c
src/ts/tutorials/ex21.c
---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/sys/classes/viewer/impls/draw/drawv.c)
[Index of all Viewer routines](index.md)
[Table of Contents for all manual pages](/manualpages/index.md)
[Index of all manual pages](/manualpages/singleindex.md)