! This file is AUTOGENERATED!!!! ! Do not edit this file; edit m_wcml_quantity.m4 and regenerate. ! ! module m_wcml_parameter use fox_m_fsys_realtypes, only: sp, dp use FoX_wxml, only: xmlf_t #ifndef DUMMYLIB use FoX_wxml, only: xml_NewElement, xml_AddAttribute use FoX_wxml, only: xml_EndElement use m_wcml_stml, only: stmAddValue ! Fix for pgi, requires this explicitly: use m_wxml_overloads #endif implicit none private interface cmlAddparameter module procedure parameterCmplxDpSca module procedure parameterCmplxDpArrSi module procedure parameterCmplxDpArrSh module procedure parameterCmplxDpMatSi module procedure parameterCmplxDpMatSh module procedure parameterCmplxSpSca module procedure parameterCmplxSpArrSi module procedure parameterCmplxSpArrSh module procedure parameterCmplxSpMatSi module procedure parameterCmplxSpMatSh module procedure parameterRealDpSca module procedure parameterRealDpArrSi module procedure parameterRealDpArrSh module procedure parameterRealDpMatSi module procedure parameterRealDpMatSh module procedure parameterRealSpSca module procedure parameterRealSpArrSi module procedure parameterRealSpArrSh module procedure parameterRealSpMatSi module procedure parameterRealSpMatSh module procedure parameterIntSca module procedure parameterIntArrSi module procedure parameterIntArrSh module procedure parameterIntMatSi module procedure parameterIntMatSh module procedure parameterLgSca module procedure parameterLgArrSi module procedure parameterLgArrSh module procedure parameterLgMatSi module procedure parameterLgMatSh module procedure parameterChSca module procedure parameterChArrSi module procedure parameterChArrSh module procedure parameterChMatSi module procedure parameterChMatSh end interface public :: cmlAddparameter contains subroutine parameterCmplxDpSca & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf complex(dp), intent(in) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterCmplxDpSca subroutine parameterCmplxSpSca & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf complex(sp), intent(in) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterCmplxSpSca subroutine parameterRealDpSca & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf real(dp), intent(in) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterRealDpSca subroutine parameterRealSpSca & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf real(sp), intent(in) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterRealSpSca subroutine parameterIntSca & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units) type(xmlf_t), intent(inout) :: xf integer, intent(in) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units) call xml_EndElement(xf, "parameter") #endif end subroutine parameterIntSca subroutine parameterLgSca & (xf, value, ref, title, id, convention, dictRef, constraint, name, role) type(xmlf_t), intent(inout) :: xf logical, intent(in) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value) call xml_EndElement(xf, "parameter") #endif end subroutine parameterLgSca subroutine parameterChSca & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units) type(xmlf_t), intent(inout) :: xf character(len=*), intent(in) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) , optional :: units #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units) call xml_EndElement(xf, "parameter") #endif end subroutine parameterChSca subroutine parameterCmplxDpArrSi & (xf, value,nitems, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf complex(dp), intent(in) , dimension(:) :: value integer, intent(in) :: nitems character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value(:nitems), units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterCmplxDpArrSi subroutine parameterCmplxSpArrSi & (xf, value,nitems, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf complex(sp), intent(in) , dimension(:) :: value integer, intent(in) :: nitems character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value(:nitems), units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterCmplxSpArrSi subroutine parameterRealDpArrSi & (xf, value,nitems, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf real(dp), intent(in) , dimension(:) :: value integer, intent(in) :: nitems character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value(:nitems), units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterRealDpArrSi subroutine parameterRealSpArrSi & (xf, value,nitems, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf real(sp), intent(in) , dimension(:) :: value integer, intent(in) :: nitems character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value(:nitems), units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterRealSpArrSi subroutine parameterIntArrSi & (xf, value,nitems, ref, title, id, convention, dictRef, constraint, name, role, units) type(xmlf_t), intent(inout) :: xf integer, intent(in) , dimension(:) :: value integer, intent(in) :: nitems character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value(:nitems), units=units) call xml_EndElement(xf, "parameter") #endif end subroutine parameterIntArrSi subroutine parameterLgArrSi & (xf, value,nitems, ref, title, id, convention, dictRef, constraint, name, role) type(xmlf_t), intent(inout) :: xf logical, intent(in) , dimension(:) :: value integer, intent(in) :: nitems character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value(:nitems)) call xml_EndElement(xf, "parameter") #endif end subroutine parameterLgArrSi subroutine parameterChArrSi & (xf, value,nitems, ref, title, id, convention, dictRef, constraint, name, role, units) type(xmlf_t), intent(inout) :: xf character(len=*), intent(in) , dimension(:) :: value integer, intent(in) :: nitems character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) , optional :: units #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value(:nitems), units=units) call xml_EndElement(xf, "parameter") #endif end subroutine parameterChArrSi subroutine parameterCmplxDpArrSh & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf complex(dp), intent(in) , dimension(:) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterCmplxDpArrSh subroutine parameterCmplxSpArrSh & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf complex(sp), intent(in) , dimension(:) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterCmplxSpArrSh subroutine parameterRealDpArrSh & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf real(dp), intent(in) , dimension(:) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterRealDpArrSh subroutine parameterRealSpArrSh & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf real(sp), intent(in) , dimension(:) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterRealSpArrSh subroutine parameterIntArrSh & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units) type(xmlf_t), intent(inout) :: xf integer, intent(in) , dimension(:) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units) call xml_EndElement(xf, "parameter") #endif end subroutine parameterIntArrSh subroutine parameterLgArrSh & (xf, value, ref, title, id, convention, dictRef, constraint, name, role) type(xmlf_t), intent(inout) :: xf logical, intent(in) , dimension(:) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value) call xml_EndElement(xf, "parameter") #endif end subroutine parameterLgArrSh subroutine parameterChArrSh & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units) type(xmlf_t), intent(inout) :: xf character(len=*), intent(in) , dimension(:) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) , optional :: units #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units) call xml_EndElement(xf, "parameter") #endif end subroutine parameterChArrSh subroutine parameterCmplxDpMatSi & (xf, value,nrows, ncols, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf complex(dp), intent(in) , dimension(:,:) :: value integer, intent(in) :: nrows integer, intent(in) :: ncols character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value(:nrows, :ncols), units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterCmplxDpMatSi subroutine parameterCmplxSpMatSi & (xf, value,nrows, ncols, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf complex(sp), intent(in) , dimension(:,:) :: value integer, intent(in) :: nrows integer, intent(in) :: ncols character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value(:nrows, :ncols), units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterCmplxSpMatSi subroutine parameterRealDpMatSi & (xf, value,nrows, ncols, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf real(dp), intent(in) , dimension(:,:) :: value integer, intent(in) :: nrows integer, intent(in) :: ncols character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value(:nrows, :ncols), units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterRealDpMatSi subroutine parameterRealSpMatSi & (xf, value,nrows, ncols, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf real(sp), intent(in) , dimension(:,:) :: value integer, intent(in) :: nrows integer, intent(in) :: ncols character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value(:nrows, :ncols), units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterRealSpMatSi subroutine parameterIntMatSi & (xf, value,nrows, ncols, ref, title, id, convention, dictRef, constraint, name, role, units) type(xmlf_t), intent(inout) :: xf integer, intent(in) , dimension(:,:) :: value integer, intent(in) :: nrows integer, intent(in) :: ncols character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value(:nrows, :ncols), units=units) call xml_EndElement(xf, "parameter") #endif end subroutine parameterIntMatSi subroutine parameterLgMatSi & (xf, value,nrows, ncols, ref, title, id, convention, dictRef, constraint, name, role) type(xmlf_t), intent(inout) :: xf logical, intent(in) , dimension(:,:) :: value integer, intent(in) :: nrows integer, intent(in) :: ncols character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value(:nrows, :ncols)) call xml_EndElement(xf, "parameter") #endif end subroutine parameterLgMatSi subroutine parameterChMatSi & (xf, value,nrows, ncols, ref, title, id, convention, dictRef, constraint, name, role, units) type(xmlf_t), intent(inout) :: xf character(len=*), intent(in) , dimension(:,:) :: value integer, intent(in) :: nrows integer, intent(in) :: ncols character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) , optional :: units #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value(:nrows, :ncols), units=units) call xml_EndElement(xf, "parameter") #endif end subroutine parameterChMatSi subroutine parameterCmplxDpMatSh & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf complex(dp), intent(in) , dimension(:,:) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterCmplxDpMatSh subroutine parameterCmplxSpMatSh & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf complex(sp), intent(in) , dimension(:,:) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterCmplxSpMatSh subroutine parameterRealDpMatSh & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf real(dp), intent(in) , dimension(:,:) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterRealDpMatSh subroutine parameterRealSpMatSh & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units, fmt) type(xmlf_t), intent(inout) :: xf real(sp), intent(in) , dimension(:,:) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units character(len=*), intent(in), optional :: fmt #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units, fmt=fmt) call xml_EndElement(xf, "parameter") #endif end subroutine parameterRealSpMatSh subroutine parameterIntMatSh & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units) type(xmlf_t), intent(inout) :: xf integer, intent(in) , dimension(:,:) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) :: units #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units) call xml_EndElement(xf, "parameter") #endif end subroutine parameterIntMatSh subroutine parameterLgMatSh & (xf, value, ref, title, id, convention, dictRef, constraint, name, role) type(xmlf_t), intent(inout) :: xf logical, intent(in) , dimension(:,:) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value) call xml_EndElement(xf, "parameter") #endif end subroutine parameterLgMatSh subroutine parameterChMatSh & (xf, value, ref, title, id, convention, dictRef, constraint, name, role, units) type(xmlf_t), intent(inout) :: xf character(len=*), intent(in) , dimension(:,:) :: value character(len=*), intent(in), optional :: ref character(len=*), intent(in), optional :: title character(len=*), intent(in), optional :: id character(len=*), intent(in), optional :: convention character(len=*), intent(in), optional :: dictRef character(len=*), intent(in), optional :: constraint character(len=*), intent(in), optional :: name character(len=*), intent(in), optional :: role character(len=*), intent(in) , optional :: units #ifndef DUMMYLIB call xml_NewElement(xf, "parameter") if (present(ref)) call xml_addAttribute(xf, "ref", ref) if (present(title)) call xml_addAttribute(xf, "title", title) if (present(id)) call xml_addAttribute(xf, "id", id) if (present(convention)) call xml_addAttribute(xf, "convention", convention) if (present(dictRef)) call xml_addAttribute(xf, "dictRef", dictRef) if (present(constraint)) call xml_addAttribute(xf, "constraint", constraint) if (present(name)) call xml_addAttribute(xf, "name", name) if (present(role)) call xml_addAttribute(xf, "role", role) call stmAddValue(xf=xf, value=value, units=units) call xml_EndElement(xf, "parameter") #endif end subroutine parameterChMatSh end module m_wcml_parameter