# VecHIPRestoreArrayRead
Restore a HIP device pointer previously acquired with VecHIPGetArrayRead(). 
## Synopsis
```
#include "petscvec.h"   
PETSC_EXTERN PetscErrorCode VecHIPRestoreArrayRead(Vec v, const PetscScalar **a)
```
If the data on the host side was previously up to date it will remain
so, i.e. data on both the device and the host is up to date.
Accessing data on the host side e.g. with VecGetArray() does not
incur a device to host data transfer.


## Input Parameters

- ***v -*** the vector
- ***a -*** the HIP device pointer.  This pointer is invalid after
VecHIPRestoreArrayRead() returns.



## Fortran note
This function is not currently available from Fortran.




## See Also
 `VecHIPGetArrayRead()`, `VecHIPGetArrayWrite()`, `VecHIPGetArray()`, `VecGetArray()`, `VecRestoreArray()`, `VecGetArrayRead()`

## Level
intermediate

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/vec/vec/interface/rvector.c.html#VecHIPRestoreArrayRead">src/vec/vec/interface/rvector.c</A>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/vec/vec/interface/rvector.c)


[Index of all Vec routines](index.md)  
[Table of Contents for all manual pages](/docs/manualpages/index.md)  
[Index of all manual pages](/docs/manualpages/singleindex.md)  
