ioffset_update Subroutine

private elemental subroutine ioffset_update(self, n_byte)

Type Bound

xml_writer_appended

Arguments

Type IntentOptional Attributes Name
class(xml_writer_appended), intent(inout) :: self
integer(kind=I4P), intent(in) :: n_byte

Called by

proc~~ioffset_update~~CalledByGraph proc~ioffset_update xml_writer_appended%ioffset_update proc~write_dataarray1_rank1_i1p~3 xml_writer_appended%write_dataarray1_rank1_I1P proc~write_dataarray1_rank1_i1p~3->proc~ioffset_update proc~write_dataarray1_rank1_i2p~3 xml_writer_appended%write_dataarray1_rank1_I2P proc~write_dataarray1_rank1_i2p~3->proc~ioffset_update proc~write_dataarray1_rank1_i4p~3 xml_writer_appended%write_dataarray1_rank1_I4P proc~write_dataarray1_rank1_i4p~3->proc~ioffset_update proc~write_dataarray1_rank1_i8p~3 xml_writer_appended%write_dataarray1_rank1_I8P proc~write_dataarray1_rank1_i8p~3->proc~ioffset_update proc~write_dataarray1_rank1_r4p~3 xml_writer_appended%write_dataarray1_rank1_R4P proc~write_dataarray1_rank1_r4p~3->proc~ioffset_update proc~write_dataarray1_rank1_r8p~3 xml_writer_appended%write_dataarray1_rank1_R8P proc~write_dataarray1_rank1_r8p~3->proc~ioffset_update proc~write_dataarray1_rank2_i1p~3 xml_writer_appended%write_dataarray1_rank2_I1P proc~write_dataarray1_rank2_i1p~3->proc~ioffset_update proc~write_dataarray1_rank2_i2p~3 xml_writer_appended%write_dataarray1_rank2_I2P proc~write_dataarray1_rank2_i2p~3->proc~ioffset_update proc~write_dataarray1_rank2_i4p~3 xml_writer_appended%write_dataarray1_rank2_I4P proc~write_dataarray1_rank2_i4p~3->proc~ioffset_update proc~write_dataarray1_rank2_i8p~3 xml_writer_appended%write_dataarray1_rank2_I8P proc~write_dataarray1_rank2_i8p~3->proc~ioffset_update proc~write_dataarray1_rank2_r4p~3 xml_writer_appended%write_dataarray1_rank2_R4P proc~write_dataarray1_rank2_r4p~3->proc~ioffset_update proc~write_dataarray1_rank2_r8p~3 xml_writer_appended%write_dataarray1_rank2_R8P proc~write_dataarray1_rank2_r8p~3->proc~ioffset_update proc~write_dataarray1_rank3_i1p~3 xml_writer_appended%write_dataarray1_rank3_I1P proc~write_dataarray1_rank3_i1p~3->proc~ioffset_update proc~write_dataarray1_rank3_i2p~3 xml_writer_appended%write_dataarray1_rank3_I2P proc~write_dataarray1_rank3_i2p~3->proc~ioffset_update proc~write_dataarray1_rank3_i4p~3 xml_writer_appended%write_dataarray1_rank3_I4P proc~write_dataarray1_rank3_i4p~3->proc~ioffset_update proc~write_dataarray1_rank3_i8p~3 xml_writer_appended%write_dataarray1_rank3_I8P proc~write_dataarray1_rank3_i8p~3->proc~ioffset_update proc~write_dataarray1_rank3_r4p~3 xml_writer_appended%write_dataarray1_rank3_R4P proc~write_dataarray1_rank3_r4p~3->proc~ioffset_update proc~write_dataarray1_rank3_r8p~3 xml_writer_appended%write_dataarray1_rank3_R8P proc~write_dataarray1_rank3_r8p~3->proc~ioffset_update proc~write_dataarray1_rank4_i1p~3 xml_writer_appended%write_dataarray1_rank4_I1P proc~write_dataarray1_rank4_i1p~3->proc~ioffset_update proc~write_dataarray1_rank4_i2p~3 xml_writer_appended%write_dataarray1_rank4_I2P proc~write_dataarray1_rank4_i2p~3->proc~ioffset_update proc~write_dataarray1_rank4_i4p~3 xml_writer_appended%write_dataarray1_rank4_I4P proc~write_dataarray1_rank4_i4p~3->proc~ioffset_update proc~write_dataarray1_rank4_i8p~3 xml_writer_appended%write_dataarray1_rank4_I8P proc~write_dataarray1_rank4_i8p~3->proc~ioffset_update proc~write_dataarray1_rank4_r4p~3 xml_writer_appended%write_dataarray1_rank4_R4P proc~write_dataarray1_rank4_r4p~3->proc~ioffset_update proc~write_dataarray1_rank4_r8p~3 xml_writer_appended%write_dataarray1_rank4_R8P proc~write_dataarray1_rank4_r8p~3->proc~ioffset_update proc~write_dataarray3_rank1_i1p~3 xml_writer_appended%write_dataarray3_rank1_I1P proc~write_dataarray3_rank1_i1p~3->proc~ioffset_update proc~write_dataarray3_rank1_i2p~3 xml_writer_appended%write_dataarray3_rank1_I2P proc~write_dataarray3_rank1_i2p~3->proc~ioffset_update proc~write_dataarray3_rank1_i4p~3 xml_writer_appended%write_dataarray3_rank1_I4P proc~write_dataarray3_rank1_i4p~3->proc~ioffset_update proc~write_dataarray3_rank1_i8p~3 xml_writer_appended%write_dataarray3_rank1_I8P proc~write_dataarray3_rank1_i8p~3->proc~ioffset_update proc~write_dataarray3_rank1_r4p~3 xml_writer_appended%write_dataarray3_rank1_R4P proc~write_dataarray3_rank1_r4p~3->proc~ioffset_update proc~write_dataarray3_rank1_r8p~3 xml_writer_appended%write_dataarray3_rank1_R8P proc~write_dataarray3_rank1_r8p~3->proc~ioffset_update proc~write_dataarray3_rank3_i1p~3 xml_writer_appended%write_dataarray3_rank3_I1P proc~write_dataarray3_rank3_i1p~3->proc~ioffset_update proc~write_dataarray3_rank3_i2p~3 xml_writer_appended%write_dataarray3_rank3_I2P proc~write_dataarray3_rank3_i2p~3->proc~ioffset_update proc~write_dataarray3_rank3_i4p~3 xml_writer_appended%write_dataarray3_rank3_I4P proc~write_dataarray3_rank3_i4p~3->proc~ioffset_update proc~write_dataarray3_rank3_i8p~3 xml_writer_appended%write_dataarray3_rank3_I8P proc~write_dataarray3_rank3_i8p~3->proc~ioffset_update proc~write_dataarray3_rank3_r4p~3 xml_writer_appended%write_dataarray3_rank3_R4P proc~write_dataarray3_rank3_r4p~3->proc~ioffset_update proc~write_dataarray3_rank3_r8p~3 xml_writer_appended%write_dataarray3_rank3_R8P proc~write_dataarray3_rank3_r8p~3->proc~ioffset_update proc~write_dataarray6_rank1_i1p~3 xml_writer_appended%write_dataarray6_rank1_I1P proc~write_dataarray6_rank1_i1p~3->proc~ioffset_update proc~write_dataarray6_rank1_i2p~3 xml_writer_appended%write_dataarray6_rank1_I2P proc~write_dataarray6_rank1_i2p~3->proc~ioffset_update proc~write_dataarray6_rank1_i4p~3 xml_writer_appended%write_dataarray6_rank1_I4P proc~write_dataarray6_rank1_i4p~3->proc~ioffset_update proc~write_dataarray6_rank1_i8p~3 xml_writer_appended%write_dataarray6_rank1_I8P proc~write_dataarray6_rank1_i8p~3->proc~ioffset_update proc~write_dataarray6_rank1_r4p~3 xml_writer_appended%write_dataarray6_rank1_R4P proc~write_dataarray6_rank1_r4p~3->proc~ioffset_update proc~write_dataarray6_rank1_r8p~3 xml_writer_appended%write_dataarray6_rank1_R8P proc~write_dataarray6_rank1_r8p~3->proc~ioffset_update proc~write_dataarray6_rank3_i1p~3 xml_writer_appended%write_dataarray6_rank3_I1P proc~write_dataarray6_rank3_i1p~3->proc~ioffset_update proc~write_dataarray6_rank3_i2p~3 xml_writer_appended%write_dataarray6_rank3_I2P proc~write_dataarray6_rank3_i2p~3->proc~ioffset_update proc~write_dataarray6_rank3_i4p~3 xml_writer_appended%write_dataarray6_rank3_I4P proc~write_dataarray6_rank3_i4p~3->proc~ioffset_update proc~write_dataarray6_rank3_i8p~3 xml_writer_appended%write_dataarray6_rank3_I8P proc~write_dataarray6_rank3_i8p~3->proc~ioffset_update proc~write_dataarray6_rank3_r4p~3 xml_writer_appended%write_dataarray6_rank3_R4P proc~write_dataarray6_rank3_r4p~3->proc~ioffset_update proc~write_dataarray6_rank3_r8p~3 xml_writer_appended%write_dataarray6_rank3_R8P proc~write_dataarray6_rank3_r8p~3->proc~ioffset_update

Source Code

  elemental subroutine ioffset_update(self, n_byte)
  !< Update ioffset count.
  class(xml_writer_appended), intent(inout) :: self  !< Writer.
  integer(I4P),               intent(in)    :: n_byte !< Number of bytes saved.

  if (self%encoding=='raw') then
    self%ioffset = self%ioffset + BYI4P + n_byte
  else
    self%ioffset = self%ioffset + ((n_byte + BYI4P + 2_I4P)/3_I4P)*4_I4P
  endif
  endsubroutine ioffset_update