| Path: | src/anvarputnum.f90 |
| Last Update: | Thu Sep 08 22:21:48 JST 2005 |
Copyright (C) GFD Dennou Club, 2000-2005. All rights reserved.
This file is created by "anvarputtype.m4" by m4 command using "intrinsic_types.m4". Don‘t edit each files directly.
| var : | type(AN_VARIABLE), intent(in) |
| start(:) : | integer(INTK), intent(in) |
| count(:) : | integer(INTK), intent(in) |
| stride(:) : | integer(INTK), intent(in) |
| imap(:) : | integer(INTK), intent(in) |
| siz : | integer(INTK), intent(in) |
| value(siz) : | real(DP), intent(in) |
| iostat : | integer(INTK), intent(out) |
subroutine ANVarPutDouble(var, start, count, stride, imap, siz, value, iostat)
implicit none
type(AN_VARIABLE), intent(in):: var
integer(INTK), intent(in):: start(:)
integer(INTK), intent(in):: count(:)
integer(INTK), intent(in):: stride(:)
integer(INTK), intent(in):: imap(:)
integer(INTK), intent(in):: siz
real(DP), intent(in):: value(siz)
integer(INTK), intent(out):: iostat
integer(INTK):: ndims
type(an_variable_entry):: ent
character(len = *), parameter:: subname = "ANVarPutDouble"
continue
call BeginSub(subname)
iostat = vtable_lookup(var, ent)
if (iostat /= nf_noerr) goto 999
ndims = 0
if (associated(ent%dimids)) ndims = size(ent%dimids)
if (min(size(start), size(count), size(stride), size(imap)) < ndims) then
iostat = nf_einval
goto 999
endif
call DbgMessage("f=%d v=%d sta=%*d c=%*d str=%*d imap=%*d", i=(/ent%fileid, ent%varid, start, count, stride, imap/), n=(/ndims, ndims, ndims, ndims/))
iostat = anfiledatamode(ent%fileid)
if (iostat /= nf_noerr) return
iostat = nf_put_varm_Double(ent%fileid, ent%varid, start, count, stride, imap, value)
999 continue
call EndSub(subname, "iostat=%d", i=(/iostat/))
end subroutine ANVarPutDouble
| var : | type(AN_VARIABLE), intent(in) |
| start(:) : | integer(INTK), intent(in) |
| count(:) : | integer(INTK), intent(in) |
| stride(:) : | integer(INTK), intent(in) |
| imap(:) : | integer(INTK), intent(in) |
| siz : | integer(INTK), intent(in) |
| value(siz) : | real(SP), intent(in) |
| iostat : | integer(INTK), intent(out) |
subroutine ANVarPutReal(var, start, count, stride, imap, siz, value, iostat)
implicit none
type(AN_VARIABLE), intent(in):: var
integer(INTK), intent(in):: start(:)
integer(INTK), intent(in):: count(:)
integer(INTK), intent(in):: stride(:)
integer(INTK), intent(in):: imap(:)
integer(INTK), intent(in):: siz
real(SP), intent(in):: value(siz)
integer(INTK), intent(out):: iostat
integer(INTK):: ndims
type(an_variable_entry):: ent
character(len = *), parameter:: subname = "ANVarPutReal"
continue
call BeginSub(subname)
iostat = vtable_lookup(var, ent)
if (iostat /= nf_noerr) goto 999
ndims = 0
if (associated(ent%dimids)) ndims = size(ent%dimids)
if (min(size(start), size(count), size(stride), size(imap)) < ndims) then
iostat = nf_einval
goto 999
endif
call DbgMessage("f=%d v=%d sta=%*d c=%*d str=%*d imap=%*d", i=(/ent%fileid, ent%varid, start, count, stride, imap/), n=(/ndims, ndims, ndims, ndims/))
iostat = anfiledatamode(ent%fileid)
if (iostat /= nf_noerr) return
iostat = nf_put_varm_Real(ent%fileid, ent%varid, start, count, stride, imap, value)
999 continue
call EndSub(subname, "iostat=%d", i=(/iostat/))
end subroutine ANVarPutReal