diff --git a/griddedio/GriddedIO.F90 b/griddedio/GriddedIO.F90 index cea3383893fe..b7582842887c 100644 --- a/griddedio/GriddedIO.F90 +++ b/griddedio/GriddedIO.F90 @@ -126,6 +126,7 @@ subroutine CreateFileMetaData(this,items,bundle,timeInfo,vdata,ogrid,global_attr integer :: metadataVarsSize type(StringStringMapIterator) :: s_iter character(len=:), pointer :: attr_name, attr_val + class(Variable), pointer :: coord_var integer :: status this%items = items @@ -155,6 +156,14 @@ subroutine CreateFileMetaData(this,items,bundle,timeInfo,vdata,ogrid,global_attr factory => get_factory(this%output_grid,rc=status) _VERIFY(status) call factory%append_metadata(this%metadata) + coord_var => this%metadata%get_variable('lons') + if (associated(coord_var)) call coord_var%set_deflation(this%deflateLevel) + coord_var => this%metadata%get_variable('lats') + if (associated(coord_var)) call coord_var%set_deflation(this%deflateLevel) + coord_var => this%metadata%get_variable('corner_lons') + if (associated(coord_var)) call coord_var%set_deflation(this%deflateLevel) + coord_var => this%metadata%get_variable('corner_lats') + if (associated(coord_var)) call coord_var%set_deflation(this%deflateLevel) if (present(vdata)) then this%vdata=vdata diff --git a/pfio/Variable.F90 b/pfio/Variable.F90 index 170ec8088da0..6bedd8c6043b 100644 --- a/pfio/Variable.F90 +++ b/pfio/Variable.F90 @@ -49,6 +49,7 @@ module pFIO_VariableMod procedure :: get_chunksizes procedure :: get_deflation + procedure :: set_deflation procedure :: get_quantize_algorithm procedure :: get_quantize_level procedure :: is_attribute_present @@ -282,6 +283,12 @@ function get_deflation(this) result(deflateLevel) deflateLevel=this%deflation end function get_deflation + subroutine set_deflation(this,deflate_level) + class (Variable), target, intent(inout) :: this + integer, intent(in) :: deflate_level + this%deflation = deflate_level + end subroutine + function get_quantize_algorithm(this) result(quantizeAlgorithm) class (Variable), target, intent(In) :: this integer :: quantizeAlgorithm