The schematic below shows the Unified Modeling Language (UML) notation for the class diagrams presented in this Reference Manual. For more on UML, see references such as The Unified Modeling Language Reference Manual, Rumbaugh et al, [17].
The tables below show the possible error return codes for Fortran and C++ methods.
===================================================== Success/Failure Return codes for both Fortran and C++ ===================================================== ESMF_SUCCESS 0 ESMF_FAILURE -1 ===================================== Fortran Symmetric Return Codes 1-500 ===================================== ESMF_RC_OBJ_BAD 1 ESMF_RC_OBJ_INIT 2 ESMF_RC_OBJ_CREATE 3 ESMF_RC_OBJ_COR 4 ESMF_RC_OBJ_WRONG 5 ESMF_RC_ARG_BAD 6 ESMF_RC_ARG_RANK 7 ESMF_RC_ARG_SIZE 8 ESMF_RC_ARG_VALUE 9 ESMF_RC_ARG_DUP 10 ESMF_RC_ARG_SAMETYPE 11 ESMF_RC_ARG_SAMECOMM 12 ESMF_RC_ARG_INCOMP 13 ESMF_RC_ARG_CORRUPT 14 ESMF_RC_ARG_WRONG 15 ESMF_RC_ARG_OUTOFRANGE 16 ESMF_RC_ARG_OPT 17 ESMF_RC_NOT_IMPL 18 ESMF_RC_FILE_OPEN 19 ESMF_RC_FILE_CREATE 20 ESMF_RC_FILE_READ 21 ESMF_RC_FILE_WRITE 22 ESMF_RC_FILE_UNEXPECTED 23 ESMF_RC_FILE_CLOSE 24 ESMF_RC_FILE_ACTIVE 25 ESMF_RC_PTR_NULL 26 ESMF_RC_PTR_BAD 27 ESMF_RC_PTR_NOTALLOC 28 ESMF_RC_PTR_ISALLOC 29 ESMF_RC_MEM 30 ESMF_RC_MEM_ALLOCATE 31 ESMF_RC_MEM_DEALLOCATE 32 ESMF_RC_MEMC 33 ESMF_RC_DUP_NAME 34 ESMF_RC_LONG_NAME 35 ESMF_RC_LONG_STR 36 ESMF_RC_COPY_FAIL 37 ESMF_RC_DIV_ZERO 38 ESMF_RC_CANNOT_GET 39 ESMF_RC_CANNOT_SET 40 ESMF_RC_NOT_FOUND 41 ESMF_RC_NOT_VALID 42 ESMF_RC_INTNRL_LIST 43 ESMF_RC_INTNRL_INCONS 44 ESMF_RC_INTNRL_BAD 45 ESMF_RC_SYS 46 ESMF_RC_BUSY 47 ESMF_RC_LIB 48 ESMF_RC_LIB_NOT_PRESENT 49 ESMF_RC_ATTR_UNUSED 50 ESMF_RC_OBJ_NOT_CREATED 51 ESMF_RC_OBJ_DELETED 52 ESMF_RC_NOT_SET 53 ESMF_RC_VAL_WRONG 54 ESMF_RC_VAL_ERRBOUND 55 ESMF_RC_VAL_OUTOFRANGE 56 ESMF_RC_ATTR_NOTSET 57 ESMF_RC_ATTR_WRONGTYPE 58 ESMF_RC_ATTR_ITEMSOFF 59 ESMF_RC_ATTR_LINK 60 ESMF_RC_BUFFER_SHORT 61 62-499 reserved for future Fortran symmetric return code definitions ===================================== C++ Symmetric Return Codes 501-999 ===================================== ESMC_RC_OBJ_BAD 501 ESMC_RC_OBJ_INIT 502 ESMC_RC_OBJ_CREATE 503 ESMC_RC_OBJ_COR 504 ESMC_RC_OBJ_WRONG 505 ESMC_RC_ARG_BAD 506 ESMC_RC_ARG_RANK 507 ESMC_RC_ARG_SIZE 508 ESMC_RC_ARG_VALUE 509 ESMC_RC_ARG_DUP 510 ESMC_RC_ARG_SAMETYPE 511 ESMC_RC_ARG_SAMECOMM 512 ESMC_RC_ARG_INCOMP 513 ESMC_RC_ARG_CORRUPT 514 ESMC_RC_ARG_WRONG 515 ESMC_RC_ARG_OUTOFRANGE 516 ESMC_RC_ARG_OPT 517 ESMC_RC_NOT_IMPL 518 ESMC_RC_FILE_OPEN 519 ESMC_RC_FILE_CREATE 520 ESMC_RC_FILE_READ 521 ESMC_RC_FILE_WRITE 522 ESMC_RC_FILE_UNEXPECTED 523 ESMC_RC_FILE_CLOSE 524 ESMC_RC_FILE_ACTIVE 525 ESMC_RC_PTR_NULL 526 ESMC_RC_PTR_BAD 527 ESMC_RC_PTR_NOTALLOC 528 ESMC_RC_PTR_ISALLOC 529 ESMC_RC_MEM 530 ESMC_RC_MEM_ALLOCATE 531 ESMC_RC_MEM_DEALLOCATE 532 ESMC_RC_MEMC 533 ESMC_RC_DUP_NAME 534 ESMC_RC_LONG_NAME 535 ESMC_RC_LONG_STR 536 ESMC_RC_COPY_FAIL 537 ESMC_RC_DIV_ZERO 538 ESMC_RC_CANNOT_GET 539 ESMC_RC_CANNOT_SET 540 ESMC_RC_NOT_FOUND 541 ESMC_RC_NOT_VALID 542 ESMC_RC_INTNRL_LIST 543 ESMC_RC_INTNRL_INCONS 544 ESMC_RC_INTNRL_BAD 545 ESMC_RC_SYS 546 ESMC_RC_BUSY 547 ESMC_RC_LIB 548 ESMC_RC_LIB_NOT_PRESENT 549 ESMC_RC_ATTR_UNUSED 550 ESMC_RC_OBJ_NOT_CREATED 551 ESMC_RC_OBJ_DELETED 552 ESMC_RC_NOT_SET 553 ESMC_RC_VAL_WRONG 554 ESMC_RC_VAL_ERRBOUND 555 ESMC_RC_VAL_OUTOFRANGE 556 ESMC_RC_ATTR_NOTSET 557 ESMC_RC_ATTR_WRONGTYPE 558 ESMC_RC_ATTR_ITEMSOFF 559 ESMC_RC_ATTR_LINK 560 ESMC_RC_BUFFER_SHORT 561 562-999 reserved for future C++ symmetric return code definitions ===================================== C++ Non-symmetric Return Codes 1000 ===================================== ESMC_RC_OPTARG_BAD 1000