[petsc-dev] Stricter header includes
Barry Smith
bsmith at mcs.anl.gov
Tue Feb 12 16:34:49 CST 2013
Certain PETSc "functions" are documented as being "Developer" level. Does this mean they will be in a "developer" API as opposed to the "user" API (for example in xxximpl.h instead of petscxxx.h)? Or will there not be a "developer" API at all and xxximpl.h merely provides access to the direct data structure.
On Feb 12, 2013, at 4:24 PM, Jed Brown <jedbrown at mcs.anl.gov> wrote:
> The PetscObjectState* and PetscObjectComposedData* routines are in petscimpl, but documented as a public API. It would be nice to turn all these macros into functions (which will change their signature).
I'm a big fan of turning CPP macros into functions so would be happy to see this happen.
Barry
> I'm dubious of any claims that these are called in a context where a static function call would be a performance limitation.
>
>
> On Tue, Feb 12, 2013 at 9:39 AM, Jed Brown <jedbrown at mcs.anl.gov> wrote:
> petscsys.h no longer includes petscimpl.h (including the _p_PetscObject definition) and petscvec.h no longer includes vecimpl.h (including _p_Vec). Users that need direct access can include the private headers, but we encourage you to explain your use case here so that we can provide a suitable public API.
>
> Merged here:
>
> https://bitbucket.org/petsc/petsc-dev/commits/5c59734726c7c41f493a5f5b9303cfab5c66ae21
>
More information about the petsc-dev
mailing list