Public C++ surfaceΒΆ
The installed include/eon tree still ships internal headers. The
Job factory has landed. Parameters stores load state and option groups
in a private Impl, so sizeof(Parameters) is that pointer. Const
accessors and ParametersLoadAccess are the read and write surface.
Option-group types remain in the installed ParametersOptions.h.
Matter still exposes Eigen members in the header (accessors return
Eigen types). Treat only these as the extension contract:
Type |
Pure virtuals |
Notes |
|---|---|---|
|
|
Raw C arrays stay the Fortran/FFI adapter. |
|
|
|
|
|
New methods must be defaulted virtuals, not new pures. |
Capability queries (isThreadSafe, layoutFlags, supportsBatchEvaluation,
hessianRange) are defaulted virtuals. Do not add another = 0 without a
towncrier breaking fragment.
finiteCutoff() stays in its original slot and is deprecated. The default
hessianRange() returns it, so an out-of-tree override of finiteCutoff()
still colors after a recompile. Override hessianRange() for a new
potential. A many-body kernel must not report its interaction cutoff there.
CI should keep grepping that those three pures still exist and that new pures are not added silently.