| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(xml_writer_abstract), | intent(inout) | :: | self | |||
| character(len=*), | intent(in) | :: | filenames | |||
| character(len=*), | intent(in), | optional | :: | names | ||
| character(len=*), | intent(in), | optional | :: | delimiter |
function write_parallel_block_files_string(self, filenames, names, delimiter) result(error) !< Write list of files that belong to the current block (list passed as single string). !< !<#### Example of usage: 3 files blocks !<```fortran !< error = vtm%write_files_list_of_block(filenames='file_1.vts file_2.vts file_3.vtu') !<``` !< !<#### Example of usage: 3 files blocks with custom name !<```fortran !< error = vtm%write_files_list_of_block(filenames='file_1.vts file_2.vts file_3.vtu',& !< names='block-bar block-foo block-baz') !<``` class(xml_writer_abstract), intent(inout) :: self !< Writer. character(*), intent(in) :: filenames !< List of VTK-XML wrapped file names. character(*), intent(in), optional :: names !< List names attributed to wrapped files. character(*), intent(in), optional :: delimiter !< Delimiter character. integer(I4P) :: error !< Error status. type(string), allocatable :: filenames_(:) !< List of VTK-XML wrapped file names. type(string), allocatable :: names_(:) !< List names attributed to wrapped files. type(string) :: delimiter_ !< Delimiter character. type(string) :: buffer !< A string buffer. integer(I4P) :: f !< File counter. delimiter_ = ' ' ; if (present(delimiter)) delimiter_ = delimiter buffer = filenames call buffer%split(tokens=filenames_, sep=delimiter_%chars()) if (present(names)) then buffer = names call buffer%split(tokens=names_, sep=delimiter_%chars()) if (size(names_, dim=1)==size(filenames_, dim=1)) then do f=1, size(filenames_, dim=1) call self%write_self_closing_tag(name='DataSet', & attributes='index="'//trim(str(f-1, .true.))// & '" file="'//trim(adjustl(filenames_(f)))// & '" name="'//trim(adjustl(names_(f)))//'"') enddo endif else do f=1,size(filenames_, dim=1) call self%write_self_closing_tag(name='DataSet', & attributes='index="'//trim(str(f-1,.true.))// & '" file="'//trim(adjustl(filenames_(f)))//'"') enddo endif error = self%error endfunction write_parallel_block_files_string