element_bytes Function

private pure function element_bytes(tag) result(nbytes)

Bytes occupied by one element of the record type tag, or -1 for an unknown tag.

Arguments

Type IntentOptional Attributes Name
integer(kind=int32), intent(in) :: tag

Return Value integer(kind=int64)


Called by

proc~~element_bytes~~CalledByGraph proc~element_bytes element_bytes proc~read_record_header read_record_header proc~read_record_header->proc~element_bytes proc~record_bytes record_bytes proc~record_bytes->proc~element_bytes proc~read_char_record read_char_record proc~read_char_record->proc~read_record_header proc~read_int32_array read_int32_array proc~read_int32_array->proc~read_record_header proc~read_int64_array read_int64_array proc~read_int64_array->proc~read_record_header proc~read_real_dp_array read_real_dp_array proc~read_real_dp_array->proc~read_record_header proc~read_real_sp_array read_real_sp_array proc~read_real_sp_array->proc~read_record_header proc~soa_stream_bytes soa_stream_bytes proc~soa_stream_bytes->proc~record_bytes interface~read_array read_array interface~read_array->proc~read_char_record interface~read_array->proc~read_int32_array interface~read_array->proc~read_int64_array interface~read_array->proc~read_real_dp_array interface~read_array->proc~read_real_sp_array proc~particle_soa_serialized_bytes particle_soa_t%particle_soa_serialized_bytes proc~particle_soa_serialized_bytes->proc~soa_stream_bytes proc~soa_read_int32_field soa_read_int32_field proc~soa_read_int32_field->interface~read_array proc~soa_read_int64_field soa_read_int64_field proc~soa_read_int64_field->interface~read_array proc~soa_read_logical_field soa_read_logical_field proc~soa_read_logical_field->interface~read_array proc~soa_read_prologue soa_read_prologue proc~soa_read_prologue->interface~read_array proc~soa_read_real_dp_field soa_read_real_dp_field proc~soa_read_real_dp_field->interface~read_array proc~soa_read_real_sp_field soa_read_real_sp_field proc~soa_read_real_sp_field->interface~read_array interface~soa_read_field soa_read_field interface~soa_read_field->proc~soa_read_int32_field interface~soa_read_field->proc~soa_read_int64_field interface~soa_read_field->proc~soa_read_logical_field interface~soa_read_field->proc~soa_read_real_dp_field interface~soa_read_field->proc~soa_read_real_sp_field proc~particle_soa_deserialize particle_soa_t%particle_soa_deserialize proc~particle_soa_deserialize->proc~soa_read_prologue

Source Code

   pure function element_bytes(tag) result(nbytes)
      !! Bytes occupied by one element of the record type `tag`, or -1 for an
      !! unknown tag.
      integer(int32), intent(in) :: tag
      integer(int64) :: nbytes

      select case (tag)
      case (PIC_TAG_INT32)
         nbytes = 4_int64
      case (PIC_TAG_INT64)
         nbytes = 8_int64
      case (PIC_TAG_REAL_SP)
         nbytes = 4_int64
      case (PIC_TAG_REAL_DP)
         nbytes = 8_int64
      case (PIC_TAG_CHAR)
         nbytes = 1_int64
      case default
         nbytes = -1_int64
      end select
   end function element_bytes