Interface Stability by Class
The redesign of Grid and Array data structures that began at the end of ESMF's first funding cycle affected the interfaces of many classes in the framework. With the 3 series (ESMF v3.*), these interfaces are growing increasingly stable. The following chart shows our assessment of interface stability by class. Note that even interfaces marked as stable may be subject to minor adjustments or argument name changes as we proceed with development and standardization.
ESMF v3.1.0r is the baseline release for this chart. We anticipate that stability will increase over the next three years, leading to a fully stable interface at the end of 2010.
| Class | Stability level |
|---|---|
| GridComp | Stable |
| CplComp | Stable |
| State | Stable |
| FieldBundle | Stable Communication and regridding methods will be added. |
| ArrayBundle | Stable Convenience methods will be added. |
| Field | Stable Communications and regridding methods will be added. |
| Array | Stable Halo methods will be added. |
| LocalArray | Stable |
| ArraySpec | Stable |
| Grid | Medium Support for arbitrary Grid distribution, exchange Grids, multi-tile Grids, and manipulation of observational data will be added. |
| DistGrid | Stable |
| Mesh | Unstable Implemented but Fortran interfaces still need to be designed and added. |
| IOSpec | Unstable Largely unimplemented, the future of this class is uncertain. |
| Calendar | Stable | Time | Stable |
| TimeInterval | Stable |
| Clock | Stable |
| Alarm | Stable |
| Attributes | Medium Support for Attributes on Components, ArrayBundles, Arrays, and Grids may be added. Arguments may change. |
| Config | Unstable This class may be removed or consolidated with Attributes. |
| LogErr | Medium This class requires some internal rework but interfaces are unlikely to change significantly. |
| DELayout | Stable |
| VM | Stable Internal performance optimizations are expected but these are unlikely to change the interface. |
