ESMF_4_0_0 Public Method Interface Additions and Modifications

Interface changes for Initialize:


	(new) subroutine ESMF_Initialize (defaultConfigFileName, defaultCalendar, defaultLogFileName, defaultLogType, &
                        mpiCommunicator, IOUnitLower, IOUnitUpper, vm, rc)

	(old) subroutine ESMF_Initialize (defaultConfigFileName, defaultCalendar, defaultLogFileName, defaultLogType, &
                        mpiCommunicator, vm, rc)

New interfaces for CplComp:


	(new) subroutine ESMF_CplCompReadRestart(cplcomp, importState, exportState, clock, phase, blockingflag, userRc, rc)

	(new) subroutine ESMF_CplCompSetServices(cplcomp, userRoutine, sharedObj, userRc, rc)

	(new) subroutine ESMF_CplCompSetVM(cplcomp, userRoutine, userRc, rc)

	(new) subroutine ESMF_CplCompSetVM(cplcomp, userRoutine, sharedObj, userRc, rc)

	(new) subroutine ESMF_CplCompWriteRestart(cplcomp, importState, exportState, clock, phase, blockingflag, userRc, rc)

Interface changes for CplComp:


        (new) subroutine ESMF_CplCompFinalize(cplcomp, importState, exportState, clock, phase, blockingflag, userRc, rc)

	(old) subroutine ESMF_CplCompFinalize(cplcomp, importState, exportState, clock, phase, blockingflag, rc)


	(new) subroutine ESMF_CplCompGet(cplcomp, name, config, configFile, clock, vm, contextflag, currentMethod, currentPhase, rc)

	(old) subroutine ESMF_CplCompGet(cplcomp, name, config, configFile, clock, vm, contextflag, rc)


	(new) subroutine ESMF_CplCompInitialize(cplcomp, importState, exportState, clock, phase, blockingflag, userRc, rc)

	(old) subroutine ESMF_CplCompInitialize(cplcomp, importState, exportState, clock, phase, blockingflag, rc)


	(new) subroutine ESMF_CplCompRun(cplcomp, importState, exportState, clock, phase, blockingflag, userRc, rc)

	(old) subroutine ESMF_CplCompRun(cplcomp, importState, exportState, clock, phase, blockingflag, rc)


	(new) subroutine ESMF_CplCompSetEntryPoint(cplcomp, method, userRoutine, phase, rc)

	(old) subroutine ESMF_CplCompSetEntryPoint(comp, subroutineType, subroutineName, phase, rc)


	(new) subroutine ESMF_CplCompSetServices(cplcomp, userRoutine, userRc, rc)

	(old) subroutine ESMF_CplCompSetServices(comp, subroutineName, rc)


	(new) subroutine ESMF_CplCompWait(cplcomp, blockingflag, userRc, rc)

	(old) subroutine ESMF_CplCompWait(cplcomp, blockingFlag, rc)

New interfaces for GridComp:


	(new) subroutine ESMF_GridCompReadRestart(gridComp, importState, exportState, clock, phase, blockingflag, userRc, rc)

	(new) subroutine ESMF_GridCompSetServices(gridComp, userRoutine, sharedObj, userRc, rc)

	(new) subroutine ESMF_GridCompSetVM(gridComp, userRoutine, userRc, rc)

	(new) subroutine ESMF_GridCompSetVM(gridComp, userRoutine, sharedObj, userRc, rc)

	(new) subroutine ESMF_GridCompWriteRestart(gridComp, importState, exportState, clock, phase, blockingflag, userRc, rc)

Interface changes for GridComp:


	(new) subroutine ESMF_GridCompFinalize(gridComp, importState, exportState, clock, phase, blockingflag, userRc, rc)

        (old) subroutine ESMF_GridCompFinalize(gridComp, importState, exportState, clock, phase, blockingflag, rc)


        (new) subroutine ESMF_GridCompGet(gridcomp, name, gridcomptype, grid, config, configFile, clock, vm, contextflag, &
                        currentMethod, currentPhase, rc)

        (old) subroutine ESMF_GridCompGet(gridcomp, name, gridcomptype, grid, config, configFile, clock, vm, contextflag, rc)


        (new) subroutine ESMF_GridCompInitialize(gridComp, importState, exportState, clock, phase, blockingflag, userRc, rc)

        (old) subroutine ESMF_GridCompInitialize(gridComp, importState, exportState, clock, phase, blockingflag, rc)


        (new) subroutine ESMF_GridCompRun(gridComp, importState, exportState, clock, phase, blockingflag, userRc, rc)

        (old) subroutine ESMF_GridCompRun(gridComp, importState, exportState, clock, phase, blockingflag, rc)


        (new) subroutine ESMF_GridCompSetEntryPoint(gridComp, method, userRoutine, phase, rc)

        (old) subroutine ESMF_GridCompSetEntryPoint(comp, subroutineType, subroutineName, phase, rc)


        (new) subroutine ESMF_GridCompSetServices(gridComp, userRoutine, userRc, rc)

        (old) subroutine ESMF_GridCompSetServices(comp, subroutineName, rc)


        (new) subroutine ESMF_GridCompWait(gridComp, blockingflag, userRc, rc)

        (old) subroutine ESMF_GridCompWait(gridComp, blockingFlag, rc)


New interfaces for Field:


	(new) newField = ESMF_FieldCreate(grid, farrayPtr, copyflag, staggerloc, gridToFieldMap, &
			maxHaloLWidth, maxHaloUWidth, name, iospec, rc)

	(new) subroutine ESMF_FieldSetCommit(field, grid, farrayPtr, copyflag, staggerloc, gridToFieldMap, maxHaloLWidth, &
                       maxHaloUWidth, rc)

	(new) subroutine ESMF_FieldGetBounds(field, localDe, exclusiveLBound, exclusiveUBound, exclusiveCount, &
			computationalLBound, computationalUBound, computationalCount, totalLBound, &
			totalUBound, totalCount, rc)

Interface changes for Field:


	(new) newField = ESMF_FieldCreate(grid, arrayspec, indexflag, staggerloc, gridToFieldMap, ungriddedLBound, &
				ungriddedUBound, maxHaloLWidth, maxHaloUWidth, name, iospec, rc)

      	(old) newField = ESMF_FieldCreate(grid, arrayspec, staggerloc, gridToFieldMap, ungriddedLBound, ungriddedUBound, &
                               maxHaloLWidth, maxHaloUWidth, name, iospec, rc)


      	(new) newField = ESMF_FieldCreate(grid, farray, indexflag, copyflag, staggerloc, gridToFieldMap, ungriddedLBound, &
                               ungriddedUBound, maxHaloLWidth, maxHaloUWidth, name, iospec, rc)

      	(old) newField = ESMF_FieldCreate(grid, farray, copyflag, staggerloc, gridToFieldMap, ungriddedLBound, ungriddedUBound, &
                               maxHaloLWidth, maxHaloUWidth, name, iospec, rc)


      	(new) subroutine ESMF_FieldGet(field, grid, array, typekind, dimCount, staggerloc, gridToFieldMap, ungriddedLBound, &
                               ungriddedUBound, maxHaloLWidth, maxHaloUWidth, localDeCount, name, iospec, rc)

      	(old) subroutine ESMF_FieldGet(field, grid, array, typekind, dimCount, staggerloc, gridToFieldMap, ungriddedLBound, &
                               ungriddedUBound, maxHaloLWidth, maxHaloUWidth, name, iospec, rc)


      	(new) subroutine ESMF_FieldSetCommit(field, grid, farray, indexflag, copyflag, staggerloc, gridToFieldMap, ungriddedLBound, &
                               ungriddedUBound, maxHaloLWidth, maxHaloUWidth, rc)

      	(old) subroutine ESMF_FieldSetCommit(field, grid, farray, copyflag, staggerloc, gridToFieldMap, ungriddedLBound, &
                               ungriddedUBound, maxHaloLWidth, maxHaloUWidth, rc)


	(new) subroutine ESMF_FieldRegridStore(srcField, srcMaskValues, dstField, dstMaskValues, unmappedDstAction, &
				routeHandle, indicies, weights, regridMethod, regridScheme, rc)


	(old) subroutine ESMF_FieldRegridStore(srcField, dstField, routeHandle, indicies, weights, regridMethod, &
				regridScheme, rc)


	(new) subroutine ESMF_FieldRegridStore(srcField, srcMaskValues, dstField, dstMaskValues, unmappedDstAction, routeHandle, &
				indicies, weights, regridMethod, regridScheme, rc)

	(old) subroutine ESMF_FieldRegridStore(srcField, dstField, routeHandle, indicies, weights, regridMethod, regridScheme, rc)


New interfaces for Grid:


	(new) newgrid = ESMF_GridCreateShapeTile(name, coordTypeKind, minIndex, maxIndex, localIndices, localCount, &
                         connDim1, connDim2, connDim3, poleStaggerLoc1, poleStaggerLoc2, poleStaggerLoc3, &
                         bipolePos1, bipolePos2, bipolePos3, coordDep1, coordDep2, coordDep3, distDim, rc)

	(new) newgrid = ESMF_GridCreate(name, coordTypeKind,distgrid,indexArray, distDim, coordDimCount, coordDimMap, &
			destroyDistGrid, destroyDELayout, rc)

	(new) subroutine ESMF_GridSetCommitShapeTile(grid, name,coordTypeKind, minIndex, maxIndex, localIndices, localCount, &
			connDim1, connDim2, connDim3, poleStaggerLoc1, poleStaggerLoc2, poleStaggerLoc3, &
			bipolePos1, bipolePos2, bipolePos3,coordDep1, coordDep2, coordDep3, distDim, rc)

	(new) subroutine ESMF_GridGetCoord(grid, localDE, staggerloc, index, coord, rc)

	(new) subroutine ESMF_GridAddItem(grid, staggerloc, item, itemTypeKind, staggerEdgeLWidth, staggerEdgeUWidth, staggerAlign, &
			totalLWidth, totalUWidth,rc)

	(new) subroutine ESMF_GridGetItem(grid, localDE, staggerloc, item, exclusiveLBound, exclusiveUBound, exclusiveCount, & 
			computationalLBound, computationalUBound, computationalCount, totalLBound, totalUBound, &
			totalCount,  fptr, doCopy, rc)

	(new) subroutine ESMF_GridGetItem(grid, staggerloc, item, array, docopy, rc)

	(new) subroutine ESMF_GridSetItem(grid, staggerloc, item, array, doCopy, rc)


Interface changes for Grid:


	(new) subroutine ESMF_GridGet(grid, name, coordTypeKind, dimCount, tileCount, staggerlocsCount, localDECount, distgrid, &
				distgridToGridMap, coordDimCount, coordDimMap, localCount, localIndices, arbDim, 
				gridEdgeLWidth, gridEdgeUWidth, gridAlign, indexFlag, rc)


	(old) subroutine ESMF_GridGet(grid, name, coordTypeKind, dimCount, tileCount, staggerlocsCount, localDECount, distgrid, &
				distgridToGridMap, coordDimCount, coordDimMap, gridEdgeLWidth, gridEdgeUWidth, &
				gridAlign, indexFlag, rc)


	(new) subroutine ESMF_GridAddCoord(grid, staggerloc, staggerEdgeLWidth, staggerEdgeUWidth, staggerAlign, &
                                staggerMemLBound, totalLWidth, totalUWidth,rc)

        (old) subroutine ESMF_GridAddCoord(grid, staggerloc, staggerEdgeLWidth, staggerEdgeUWidth, staggerAlign, &
                                totalLWidth, totalUWidth,rc)


        (new) newGrid = ESMF_GridCreate(name, coordTypeKind,distgrid, distgridToGridMap, coordDimCount, &
                                coordDimMap, gridEdgeLWidth, gridEdgeUWidth, gridAlign, gridMemLBound, &
                                indexflag, destroyDistGrid, destroyDELayout, rc)

        (old) newGrid = ESMF_GridCreate(name, coordTypeKind,distgrid, distgridToGridMap, coordDimCount, &
                                coordDimMap, gridEdgeLWidth, gridEdgeUWidth, gridAlign, indexflag, &
                                destroyDistGrid, destroyDELayout, rc)


        (new) newGrid = ESMF_GridCreateShapeTile(name, coordTypeKind, minIndex, countsPerDEDim1, countsPerDeDim2, &
                                countsPerDEDim3, connDim1, connDim2, connDim3, poleStaggerLoc1, poleStaggerLoc2, &
                                poleStaggerLoc3, bipolePos1, bipolePos2, bipolePos3, coordDep1, coordDep2, &
                                coordDep3, gridEdgeLWidth, gridEdgeUWidth, gridAlign, gridMemLBound, indexflag, &
				petMap, rc)


        (old) newGrid = ESMF_GridCreateShapeTile(name, coordTypeKind, minIndex, countsPerDEDim1, countsPerDeDim2, &
                                countsPerDEDim3, connDim1, connDim2, connDim3, poleStaggerLoc1, poleStaggerLoc2, &
                                poleStaggerLoc3, bipolePos1, bipolePos2, bipolePos3, coordDep1, coordDep2, &
                                coordDep3, gridEdgeLWidth, gridEdgeUWidth, gridAlign, indexflag, petMap, rc)


        (new) newGrid = ESMF_GridCreateShapeTile(name, coordTypeKind, regDecomp, decompFlag, minIndex, maxIndex, &
                                connDim1, connDim2, connDim3, poleStaggerLoc1, poleStaggerLoc2, poleStaggerLoc3, &
                                bipolePos1, bipolePos2, bipolePos3, coordDep1, coordDep2, coordDep3, gridEdgeLWidth, &
                                gridEdgeUWidth, gridAlign, gridMemLBound, indexflag, petMap, rc)


        (old) newGrid = ESMF_GridCreateShapeTile(name, coordTypeKind, regDecomp, decompFlag, minIndex, maxIndex, &
                                connDim1, connDim2, connDim3, poleStaggerLoc1, poleStaggerLoc2, poleStaggerLoc3, &
                                bipolePos1, bipolePos2, bipolePos3, coordDep1, coordDep2, coordDep3, gridEdgeLWidth, &
                                gridEdgeUWidth, gridAlign, indexflag, petMap, rc)


        (new) subroutine ESMF_GridSetCommitShapeTile(grid, name,coordTypeKind, minIndex, countsPerDEDim1, countsPerDeDim2, &
                                countsPerDEDim3, connDim1, connDim2, connDim3, poleStaggerLoc1, poleStaggerLoc2, &
                                poleStaggerLoc3, bipolePos1, bipolePos2, bipolePos3, coordDep1, coordDep2, coordDep3, &
                                gridEdgeLWidth, gridEdgeUWidth, gridAlign, gridMemLBound, indexflag, petMap, rc)


        (old) subroutine ESMF_GridSetCommitShapeTile(grid, name,coordTypeKind, minIndex, countsPerDEDim1, countsPerDeDim2, &
                                countsPerDEDim3, connDim1, connDim2, connDim3, poleStaggerLoc1, poleStaggerLoc2, &
                                poleStaggerLoc3, bipolePos1, bipolePos2, bipolePos3, coordDep1, coordDep2, coordDep3, &
                                gridEdgeLWidth, gridEdgeUWidth, gridAlign, indexflag, petMap, rc)


        (new) subroutine ESMF_GridSetCommitShapeTile(grid, name, coordTypeKind, regDecomp, decompFlag, minIndex, maxIndex, &
                                connDim1, connDim2, connDim3, poleStaggerLoc1, poleStaggerLoc2, poleStaggerLoc3, &
                                bipolePos1, bipolePos2, bipolePos3, coordDep1, coordDep2, coordDep3, gridEdgeLWidth, &
                                gridEdgeUWidth, gridAlign, gridMemLBound, indexflag,  petMap, rc)

        (old) subroutine ESMF_GridSetCommitShapeTile(grid, name, coordTypeKind, regDecomp, decompFlag, minIndex, maxIndex, &
                                connDim1, connDim2, connDim3, poleStaggerLoc1, poleStaggerLoc2, poleStaggerLoc3, &
                                bipolePos1, bipolePos2, bipolePos3, coordDep1, coordDep2, coordDep3, gridEdgeLWidth, &
                                gridEdgeUWidth, gridAlign, indexflag,  petMap, rc)

Interface changes for Array:



        (new) newArray = ESMF_ArrayCreate(farray, distgrid, indexflag, copyflag, distgridToArrayMap, computationalEdgeLWidth, &
                                computationalEdgeUWidth, computationalLWidth, computationalUWidth, totalLWidth, totalUWidth, &
                                staggerLoc, vectorDim, undistLBound, undistUBound, name, rc)

        (old) newArray = ESMF_ArrayCreate(farray, distgrid, copyflag, distgridToArrayMap, computationalEdgeLWidth, &
                                computationalEdgeUWidth, computationalLWidth, computationalUWidth, totalLWidth, &
                                totalUWidth, indexflag, staggerLoc, vectorDim, undistLBound, undistUBound, name, rc)



        (new) newArray = ESMF_ArrayCreate(larrayList, distgrid, indexflag, copyflag, distgridToArrayMap, computationalEdgeLWidth, &
                                computationalEdgeUWidth, computationalLWidth, computationalUWidth, totalLWidth, totalUWidth, &
                                staggerLoc, vectorDim, undistLBound, undistUBound, name, rc)

        (old) newArray = ESMF_ArrayCreate(larrayList, distgrid, copyflag, distgridToArrayMap, computationalEdgeLWidth, &
                                computationalEdgeUWidth, computationalLWidth, computationalUWidth, totalLWidth, totalUWidth, &
                                indexflag, staggerLoc, vectorDim, undistLBound, undistUBound, name, rc)


        (new) newArray = ESMF_ArrayCreate(arrayspec, distgrid, indexflag, distgridToArrayMap, computationalEdgeLWidth, &
                                computationalEdgeUWidth, computationalLWidth, computationalUWidth, totalLWidth, totalUWidth, &
                                staggerLoc, vectorDim, undistLBound, undistUBound, name, rc)

        (old) newArray = ESMF_ArrayCreate(arrayspec, distgrid, distgridToArrayMap, computationalEdgeLWidth, computationalEdgeUWidth, &
                                computationalLWidth, computationalUWidth, totalLWidth, totalUWidth, indexflag, staggerLoc,
                                vectorDim, undistLBound, undistUBound, name, rc)


        (new) subroutine ESMF_ArrayGet(array, dim, localDe, indexCount, indexList, rc)

        (old) subroutine ESMF_ArrayGet(array, localDe, dim, indexCount, indexList, rc)

New interface for Array:



        (new) newArray = ESMF_ArrayCreate(farrayPtr, distgrid, copyflag, distgridToArrayMap, computationalEdgeLWidth, &
                                computationalEdgeUWidth, computationalLWidth, computationalUWidth, totalLWidth, totalUWidth, &
                                staggerLoc, vectorDim, name, rc)


Interface changes for DistGrid:


        (new) subroutine ESMF_DistGridGet(distgrid, localDe, seqIndexList, elementCount, rc)

        (old) subroutine ESMF_DistGridGet(distgrid, localDe, seqIndexList, rc)





New interfaces for Attribute:


	(new) subroutine ESMF_AttributeRead(<object>, fileName, convention, purpose, rc)

			Supported values for <object> are:

  			type(ESMF_CplComp), intent(inout) :: cplComp
  			type(ESMF_GridComp), intent(inout) :: gridComp
  			type(ESMF_Field), intent(inout) :: field
  			type(ESMF_Grid), intent(inout) :: grid

	(new) subroutine ESMF_AttributeLink(<object1>, <object2>, rc)

               		Supported values for the <object1> are:

               		type(ESMF_CplComp), intent(inout) :: comp1
               		type(ESMF_GridComp), intent(inout) :: comp1

               		Supported values for the <object2> are:

               		type(ESMF_CplComp), intent(inout) :: comp2
               		type(ESMF_GridComp), intent(inout) :: comp2
               		type(ESMF_State), intent(inout) :: state


	(new) subroutine ESMF_AttributeLink(state, <object>, rc)

               		Supported values for the <object> are:

               		type(ESMF_FieldBundle), intent(inout) :: fbundle
               		type(ESMF_Field), intent(inout) :: field
               		type(ESMF_State), intent(inout) :: state

	(new) subroutine ESMF_AttributeLink(fieldbundle, field, rc)

	(new) subroutine ESMF_AttributeLink(field, grid, rc)

	(new) subroutine ESMF_AttributeLinkRemove(<object1>, <object2>, rc)

               		Supported values for the <object1> are:

               		type(ESMF_CplComp), intent(inout) :: comp1
               		type(ESMF_GridComp), intent(inout) :: comp1

               		Supported values for the <object2> are:

               		type(ESMF_CplComp), intent(inout) :: comp2
               		type(ESMF_GridComp), intent(inout) :: comp2
               		type(ESMF_State), intent(inout) :: state


	(new) subroutine ESMF_AttributeLinkRemove(state, <object>, rc)

	               	Supported values for the <object> are:

               		type(ESMF_FieldBundle), intent(inout) :: fbundle
               		type(ESMF_Field), intent(inout) :: field
               		type(ESMF_State), intent(inout) :: state

	(new) subroutine ESMF_AttributeLinkRemove(fieldbundle, field, rc)

	(new) subroutine ESMF_AttributeLinkRemove(field, grid, rc)

	(new) subroutine ESMF_AttributeUpdate(<object>, vm, rootList, rc)

             		Supported values for <object> are:

             		type(ESMF_CplComp), intent(inout) :: comp
             		type(ESMF_GridComp), intent(inout) :: comp
             		type(ESMF_Field), intent(inout) :: field
             		type(ESMF_FieldBundle), intent(inout) :: fieldbundle
             		type(ESMF_State), intent(inout) :: state



Interface changes for Attribute:


	Note:  All Attribute interfaces which are not listed here were enabled for the ESMF ArrayBundle 
		and DistGrid objects as well.  The Supported values arguments for the <object> 
		parameters in the corresponding interfaces should include:

                       type(ESMF_ArrayBundle), intent(inout) :: arraybundle
                       type(ESMF_DistGrid), intent(inout) :: distgrid

	(new)  ESMF_AttributeAdd(<object>, convention, purpose, nestConvention, nestPurpose, rc)

                       Supported values for <object> are:

                       type(ESMF_Array), intent(inout) :: array
                       type(ESMF_CplComp), intent(inout) :: comp
                       type(ESMF_GridComp), intent(inout) :: comp
                       type(ESMF_Field), intent(inout) :: field
                       type(ESMF_Grid), intent(inout) :: grid
                       type(ESMF_State), intent(inout) :: state

	(old)  ESMF_AttributeAdd(<object>, convention, purpose, rc)

                       Supported values for <object> are:

                       type(ESMF_Array), intent(inout) :: array
                       type(ESMF_CplComp), intent(inout) :: comp
                       type(ESMF_GridComp), intent(inout) :: comp
                       type(ESMF_Field), intent(inout) :: field
                       type(ESMF_FieldBundle), intent(inout) :: fbundle
                       type(ESMF_Grid), intent(inout) :: grid
                       type(ESMF_State), intent(inout) :: state

	(new)  ESMF_AttributeAdd(<object>, convention, purpose, nestConvention, nestPurpose, &
                       attrList, count, rc)

                       Supported values for <object> are:

                       type(ESMF_Array), intent(inout) :: array
                       type(ESMF_ArrayBundle), intent(inout) :: arraybundle
                       type(ESMF_CplComp), intent(inout) :: comp
                       type(ESMF_GridComp), intent(inout) :: comp
                       type(ESMF_DistGrid), intent(inout) :: distgrid
                       type(ESMF_Field), intent(inout) :: field
                       type(ESMF_FieldBundle), intent(inout) :: fieldbundle
                       type(ESMF_Grid), intent(inout) :: grid
                       type(ESMF_State), intent(inout) :: state

	(old)  ESMF_AttributeAdd(<object>, convention, purpose, &
                       attrList, count, rc)

                       Supported values for <object> are:

                       type(ESMF_Array), intent(inout) :: array
                       type(ESMF_CplComp), intent(inout) :: comp
                       type(ESMF_GridComp), intent(inout) :: comp
                       type(ESMF_Field), intent(inout) :: field
                       type(ESMF_FieldBundle), intent(inout) :: fbundle
                       type(ESMF_Grid), intent(inout) :: grid
                       type(ESMF_State), intent(inout) :: state


	(new) ESMF_AttributeCopy(<object1>, <object2>, attcopyflag, atttreeflag, rc)

                       Supported values for <object1> are:

                       type(ESMF_CplComp), intent(inout) :: comp1
                       type(ESMF_GridComp), intent(inout) :: comp1  
                       type(ESMF_State), intent(inout) :: state1

                       Supported values for <object2> are:

                       type(ESMF_CplComp), intent(inout) :: comp2
                       type(ESMF_GridComp), intent(inout) :: comp2
                       type(ESMF_State), intent(inout) :: state2

	(old) subroutine ESMF_AttributeCopy(<object1>, <object2>, rc)

                       Supported values for <object1> are:

                       type(ESMF_State), intent(inout) :: state

                       Supported values for <object2> are:

                       type(ESMF_State), intent(inout) :: state


	(new) subroutine ESMF_AttributeLink(<object1>, <object2>, rc)

                       Supported values for the <object1> are:

                       type(ESMF_CplComp), intent(inout) :: comp1
                       type(ESMF_GridComp), intent(inout) :: comp1

                       Supported values for the <object2> are:

                       type(ESMF_CplComp), intent(inout) :: comp2
                       type(ESMF_GridComp), intent(inout) :: comp2
                       type(ESMF_State), intent(inout) :: state

	(old) subroutine ESMF_AttributeSet(<object1>, <object2>, rc)

                       Supported values for the <object1> are:

                       type(ESMF_CplComp), intent(inout) :: comp1
                       type(ESMF_GridComp), intent(inout) :: comp1

                       Supported values for the <object2> are:

                       type(ESMF_CplComp), intent(inout) :: comp2
                       type(ESMF_GridComp), intent(inout) :: comp2
                       type(ESMF_State), intent(inout) :: state

	(new) subroutine ESMF_AttributeLink(state, <object>, rc)

                       Supported values for the <object> are:

                       type(ESMF_FieldBundle), intent(inout) :: fbundle
                       type(ESMF_Field), intent(inout) :: field
                       type(ESMF_State), intent(inout) :: state

	(old) subroutine ESMF_AttributeSet(state, <object>, rc)

                       Supported values for the <object> are:

                       type(ESMF_FieldBundle), intent(inout) :: fbundle
                       type(ESMF_Field), intent(inout) :: field
                       type(ESMF_State), intent(inout) :: state

	(new) subroutine ESMF_AttributeLink(fieldbundle, field, rc)

	(old) subroutine ESMF_AttributeSet(fieldbundle, field, rc)


	(new) subroutine ESMF_AttributeWrite(<object>, convention, purpose, attwriteflag, rc)

                       Supported values for <object> are:

                       type(ESMF_Array), intent(inout) :: array
                       type(ESMF_CplComp), intent(inout) :: comp
                       type(ESMF_GridComp), intent(inout) :: comp
                       type(ESMF_Field), intent(inout) :: field
                       type(ESMF_FieldBundle), intent(inout) :: fbundle
                       type(ESMF_Grid), intent(inout) :: grid
                       type(ESMF_State), intent(inout) :: state

	(old) subroutine ESMF_AttributeWrite(<object>, convention, purpose, attwriteflag, rc)

                       Supported values for <object> are:

                       type(ESMF_CplComp), intent(inout) :: comp
                       type(ESMF_GridComp), intent(inout) :: comp
                       type(ESMF_Field), intent(inout) :: field
                       type(ESMF_FieldBundle), intent(inout) :: fbundle
                       type(ESMF_State), intent(inout) :: state



New interfaces for attachable Methods:


        (new) subroutine ESMF_MethodAdd(state, label, userRoutine, rc)

        (new) subroutine ESMF_MethodAdd(state, label, userRoutine, sharedObj, rc)

        (new) subroutine ESMF_MethodExecute(state, label, userRc, rc)

        (new) subroutine ESMF_MethodRemove(state, label, rc)

New interfaces for IOUnit:


	(new) subroutine ESMF_IOUnitFlush(unit, rc)

	(new) subroutine ESMF_IOUnitGet(unit, rc)