summaryrefslogtreecommitdiffstats
path: root/hl/fortran/src/H5IMff.f90
diff options
context:
space:
mode:
authorPedro Vicente Nunes <pvn@hdfgroup.org>2005-05-16 19:08:41 (GMT)
committerPedro Vicente Nunes <pvn@hdfgroup.org>2005-05-16 19:08:41 (GMT)
commit5b6c08e68e94cab82653dff0c74d1725fd2852f4 (patch)
treed08b050aff5fcaa5f51897769e41a023709a7177 /hl/fortran/src/H5IMff.f90
parent4977e0ac5163ce29211596f84cb39c3c5e525a16 (diff)
downloadhdf5-5b6c08e68e94cab82653dff0c74d1725fd2852f4.zip
hdf5-5b6c08e68e94cab82653dff0c74d1725fd2852f4.tar.gz
hdf5-5b6c08e68e94cab82653dff0c74d1725fd2852f4.tar.bz2
[svn-r10747] Purpose:
bug fix Description: the fortran type integer*1 has become not portable. define the image fortran datatype as "integer" and make special save, read, and palette functions that use native integer for a memory type and UCHAR as disk type for the image data added some more tests with new palette definitions Solution: Platforms tested: linux solaris Misc. update:
Diffstat (limited to 'hl/fortran/src/H5IMff.f90')
-rwxr-xr-xhl/fortran/src/H5IMff.f90214
1 files changed, 107 insertions, 107 deletions
diff --git a/hl/fortran/src/H5IMff.f90 b/hl/fortran/src/H5IMff.f90
index 276b302..b5f1e2b 100755
--- a/hl/fortran/src/H5IMff.f90
+++ b/hl/fortran/src/H5IMff.f90
@@ -16,9 +16,9 @@
! This file contains FORTRAN90 interfaces for H5IM functions
!
-module H5IM
-use H5FORTRAN_TYPES
-use HDF5
+module h5im
+use h5fortran_types
+use hdf5
contains
@@ -47,27 +47,27 @@ subroutine h5immake_image_8bit_f(loc_id,&
errcode )
implicit none
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer(HSIZE_T), intent(IN) :: width ! width of image
- integer(HSIZE_T), intent(IN) :: height ! height of image
- integer*1, intent(IN), dimension(*) :: buf ! 1 byte integer data buffer
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer(hsize_t), intent(in) :: width ! width of image
+ integer(hsize_t), intent(in) :: height ! height of image
+ integer, intent(in), dimension(*) :: buf ! buffer
integer :: errcode ! error code
integer :: namelen ! name length
interface
integer function h5immake_image_8bit_c(loc_id,namelen,dset_name,width,height,buf)
- use H5GLOBAL
+ use h5global
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
!MS$ATTRIBUTES C,reference,alias:'_H5IMMAKE_IMAGE_8BIT_C'::h5immake_image_8bit_c
!DEC$ ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
integer :: namelen ! lenght of name buffer
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer(HSIZE_T), intent(IN) :: width ! width of image
- integer(HSIZE_T), intent(IN) :: height ! height of image
- integer*1, intent(IN), dimension(*) :: buf ! 1 byte integer data buffer
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer(hsize_t), intent(in) :: width ! width of image
+ integer(hsize_t), intent(in) :: height ! height of image
+ integer , intent(in), dimension(*) :: buf ! buffer
end function h5immake_image_8bit_c
end interface
@@ -102,23 +102,23 @@ subroutine h5imread_image_f(loc_id,&
errcode )
implicit none
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer*1, intent(INOUT), dimension(*) :: buf ! 1 byte integer data buffer
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer, intent(inout), dimension(*) :: buf ! buffer
integer :: errcode ! error code
integer :: namelen ! name length
interface
integer function h5imread_image_c(loc_id,namelen,dset_name,buf)
- use H5GLOBAL
+ use h5global
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
!MS$ATTRIBUTES C,reference,alias:'_H5IMREAD_IMAGE_C'::h5imread_image_c
!DEC$ ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
integer :: namelen ! lenght of name buffer
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer*1, intent(INOUT), dimension(*) :: buf ! 1 byte integer data buffer
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer, intent(inout), dimension(*) :: buf ! buffer
end function h5imread_image_c
end interface
@@ -154,30 +154,30 @@ subroutine h5immake_image_24bit_f(loc_id,&
errcode )
implicit none
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer(HSIZE_T), intent(IN) :: width ! width of image
- integer(HSIZE_T), intent(IN) :: height ! height of image
- character(LEN=*), intent(IN) :: il ! interlace
- integer*1, intent(IN), dimension(*) :: buf ! 1 byte integer data buffer
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer(hsize_t), intent(in) :: width ! width of image
+ integer(hsize_t), intent(in) :: height ! height of image
+ character(len=*), intent(in) :: il ! interlace
+ integer, intent(in), dimension(*) :: buf ! buffer
integer :: errcode ! error code
integer :: namelen ! name length
integer :: ilen ! name length
interface
integer function h5immake_image_24bit_c(loc_id,namelen,dset_name,ilen,il,width,height,buf)
- use H5GLOBAL
+ use h5global
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
!MS$ATTRIBUTES C,reference,alias:'_H5IMMAKE_IMAGE_24BIT_C'::h5immake_image_24bit_c
!DEC$ ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: il
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer(HSIZE_T), intent(IN) :: width ! width of image
- integer(HSIZE_T), intent(IN) :: height ! height of image
- character(LEN=*), intent(IN) :: il ! interlace
- integer*1, intent(IN), dimension(*) :: buf ! 1 byte integer data buffer
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer(hsize_t), intent(in) :: width ! width of image
+ integer(hsize_t), intent(in) :: height ! height of image
+ character(len=*), intent(in) :: il ! interlace
+ integer, intent(in), dimension(*) :: buf ! buffer
integer :: namelen ! lenght of name buffer
integer :: ilen ! name length
@@ -219,32 +219,32 @@ subroutine h5imget_image_info_f(loc_id,&
errcode )
implicit none
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer(HSIZE_T), intent(INOUT) :: width ! width of image
- integer(HSIZE_T), intent(INOUT) :: height ! height of image
- integer(HSIZE_T), intent(INOUT) :: planes ! color planes
- integer(HSIZE_T), intent(INOUT) :: npals ! palettes
- character(LEN=*), intent(INOUT) :: interlace ! interlace
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer(hsize_t), intent(inout) :: width ! width of image
+ integer(hsize_t), intent(inout) :: height ! height of image
+ integer(hsize_t), intent(inout) :: planes ! color planes
+ integer(hsize_t), intent(inout) :: npals ! palettes
+ character(len=*), intent(inout) :: interlace ! interlace
integer :: errcode ! error code
integer :: namelen ! name length
integer :: ilen ! name length
interface
integer function h5imget_image_info_c(loc_id,namelen,dset_name,width,height,planes,npals,ilen,interlace)
- use H5GLOBAL
+ use h5global
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
!MS$ATTRIBUTES C,reference,alias:'_H5IMGET_IMAGE_INFO_C'::h5imget_image_info_c
!DEC$ ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: interlace
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer(HSIZE_T), intent(INOUT) :: width ! width of image
- integer(HSIZE_T), intent(INOUT) :: height ! height of image
- integer(HSIZE_T), intent(INOUT) :: planes ! color planes
- integer(HSIZE_T), intent(INOUT) :: npals ! palettes
- character(LEN=*), intent(INOUT) :: interlace ! interlace
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer(hsize_t), intent(inout) :: width ! width of image
+ integer(hsize_t), intent(inout) :: height ! height of image
+ integer(hsize_t), intent(inout) :: planes ! color planes
+ integer(hsize_t), intent(inout) :: npals ! palettes
+ character(len=*), intent(inout) :: interlace ! interlace
integer :: namelen ! name length
integer :: ilen ! name length
end function h5imget_image_info_c
@@ -278,21 +278,21 @@ integer function h5imis_image_f(loc_id,&
dset_name)
implicit none
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
integer :: errcode ! error code
integer :: namelen ! name length
interface
integer function h5imis_image_c(loc_id,namelen,dset_name)
- use H5GLOBAL
+ use h5global
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
!MS$ATTRIBUTES C,reference,alias:'_H5IMIS_IMAGE_C'::h5imis_image_c
!DEC$ ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
integer :: namelen ! lenght of name buffer
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
+ character(len=*), intent(in) :: dset_name ! name of the dataset
end function h5imis_image_c
end interface
@@ -327,25 +327,25 @@ subroutine h5immake_palette_f(loc_id,&
errcode )
implicit none
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer(HSIZE_T), intent(IN), dimension(*) :: pal_dims ! dimensions
- integer*1, intent(IN), dimension(*) :: buf ! 1 byte integer data buffer
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer(hsize_t), intent(in), dimension(*) :: pal_dims ! dimensions
+ integer, intent(in), dimension(*) :: buf ! buffer
integer :: errcode ! error code
integer :: namelen ! name length
interface
integer function h5immake_palette_c(loc_id,namelen,dset_name,pal_dims,buf)
- use H5GLOBAL
+ use h5global
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
!MS$ATTRIBUTES C,reference,alias:'_H5IMMAKE_PALETTE_C'::h5immake_palette_c
!DEC$ ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
integer :: namelen ! lenght of name buffer
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer(HSIZE_T), intent(IN), dimension(*) :: pal_dims ! dimensions
- integer*1, intent(IN), dimension(*) :: buf ! 1 byte integer data buffer
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer(hsize_t), intent(in), dimension(*) :: pal_dims ! dimensions
+ integer, intent(in), dimension(*) :: buf ! buffer
end function h5immake_palette_c
end interface
@@ -379,24 +379,24 @@ subroutine h5imlink_palette_f(loc_id,&
errcode )
implicit none
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- character(LEN=*), intent(IN) :: pal_name ! palette name
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ character(len=*), intent(in) :: pal_name ! palette name
integer :: errcode ! error code
integer :: namelen ! name length
integer :: ilen ! name length
interface
integer function h5imlink_palette_c(loc_id,namelen,dset_name,ilen,pal_name)
- use H5GLOBAL
+ use h5global
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
!MS$ATTRIBUTES C,reference,alias:'_H5IMLINK_PALETTE_C'::h5imlink_palette_c
!DEC$ ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: pal_name
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- character(LEN=*), intent(IN) :: pal_name ! palette name
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ character(len=*), intent(in) :: pal_name ! palette name
integer :: namelen ! name length
integer :: ilen ! name length
end function h5imlink_palette_c
@@ -432,24 +432,24 @@ subroutine h5imunlink_palette_f(loc_id,&
errcode )
implicit none
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- character(LEN=*), intent(IN) :: pal_name ! palette name
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ character(len=*), intent(in) :: pal_name ! palette name
integer :: errcode ! error code
integer :: namelen ! name length
integer :: ilen ! name length
interface
integer function h5imunlink_palette_c(loc_id,namelen,dset_name,ilen,pal_name)
- use H5GLOBAL
+ use h5global
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
!MS$ATTRIBUTES C,reference,alias:'_H5IMUNLINK_PALETTE_C'::h5imunlink_palette_c
!DEC$ ENDIF
!DEC$ATTRIBUTES reference :: dset_name
!DEC$ATTRIBUTES reference :: pal_name
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- character(LEN=*), intent(IN) :: pal_name ! palette name
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ character(len=*), intent(in) :: pal_name ! palette name
integer :: namelen ! name length
integer :: ilen ! name length
end function h5imunlink_palette_c
@@ -486,22 +486,22 @@ subroutine h5imget_npalettes_f(loc_id,&
errcode )
implicit none
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer(HSIZE_T), intent(INOUT) :: npals ! palettes
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer(hsize_t), intent(inout) :: npals ! palettes
integer :: errcode ! error code
integer :: namelen ! name length
interface
integer function h5imget_npalettes_c(loc_id,namelen,dset_name,npals)
- use H5GLOBAL
+ use h5global
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
!MS$ATTRIBUTES C,reference,alias:'_H5IMGET_NPALETTES_C'::h5imget_npalettes_c
!DEC$ ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer(HSIZE_T), intent(INOUT) :: npals ! palettes
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer(hsize_t), intent(inout) :: npals ! palettes
integer :: namelen ! name length
end function h5imget_npalettes_c
end interface
@@ -536,24 +536,24 @@ subroutine h5imget_palette_info_f(loc_id,&
errcode )
implicit none
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer, intent(IN) :: pal_number ! palette number
- integer(HSIZE_T), dimension(*), intent(INOUT) :: dims ! dimensions
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer, intent(in) :: pal_number ! palette number
+ integer(hsize_t), dimension(*), intent(inout) :: dims ! dimensions
integer :: errcode ! error code
integer :: namelen ! name length
interface
integer function h5imget_palette_info_c(loc_id,namelen,dset_name,pal_number,dims)
- use H5GLOBAL
+ use h5global
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
!MS$ATTRIBUTES C,reference,alias:'_H5IMGET_PALETTE_INFO_C'::h5imget_palette_info_c
!DEC$ ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer, intent(IN) :: pal_number ! palette number
- integer(HSIZE_T), dimension(*), intent(INOUT) :: dims ! dimensions
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer, intent(in) :: pal_number ! palette number
+ integer(hsize_t), dimension(*), intent(inout) :: dims ! dimensions
integer :: namelen ! name length
end function h5imget_palette_info_c
end interface
@@ -590,25 +590,25 @@ subroutine h5imget_palette_f(loc_id,&
errcode )
implicit none
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer, intent(IN) :: pal_number ! palette number
- integer*1, intent(INOUT), dimension(*) :: buf ! 1 byte integer data buffer
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer, intent(in) :: pal_number ! palette number
+ integer, intent(inout), dimension(*) :: buf ! buffer
integer :: errcode ! error code
integer :: namelen ! name length
interface
integer function h5imget_palette_c(loc_id,namelen,dset_name,pal_number,buf)
- use H5GLOBAL
+ use h5global
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
!MS$ATTRIBUTES C,reference,alias:'_H5IMGET_PALETTE_C'::h5imget_palette_c
!DEC$ ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
integer :: namelen ! lenght of name buffer
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
- integer, intent(IN) :: pal_number ! palette number
- integer*1, intent(INOUT), dimension(*) :: buf ! 1 byte integer data buffer
+ character(len=*), intent(in) :: dset_name ! name of the dataset
+ integer, intent(in) :: pal_number ! palette number
+ integer, intent(inout), dimension(*) :: buf ! buffer
end function h5imget_palette_c
end interface
@@ -639,21 +639,21 @@ integer function h5imis_palette_f(loc_id,&
dset_name)
implicit none
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
+ character(len=*), intent(in) :: dset_name ! name of the dataset
integer :: errcode ! error code
integer :: namelen ! name length
interface
integer function h5imis_palette_c(loc_id,namelen,dset_name)
- use H5GLOBAL
+ use h5global
!DEC$ IF DEFINED(HDF5F90_WINDOWS)
!MS$ATTRIBUTES C,reference,alias:'_H5IMIS_PALETTE_C'::h5imis_palette_c
!DEC$ ENDIF
!DEC$ATTRIBUTES reference :: dset_name
- integer(HID_T), intent(IN) :: loc_id ! file or group identifier
+ integer(hid_t), intent(in) :: loc_id ! file or group identifier
integer :: namelen ! lenght of name buffer
- character(LEN=*), intent(IN) :: dset_name ! name of the dataset
+ character(len=*), intent(in) :: dset_name ! name of the dataset
end function h5imis_palette_c
end interface