8#ifndef GRIDFORMAT_VTK_PVTI_READER_HPP_
9#define GRIDFORMAT_VTK_PVTI_READER_HPP_
33 template<Concepts::Communicator C>
39 std::string _name()
const override {
43 std::vector<double> _ordinates(
unsigned int direction)
const override {
44 if (this->_num_process_pieces() == 0)
46 if (this->_num_process_pieces() == 1)
47 return this->_readers().front().ordinates(direction);
49 const auto extents = this->_specs().extents;
50 const auto extent_begin = this->_specs().extents[2*direction];
53 const std::size_t num_ordinates(
extents[2*direction + 1] - extent_begin + 1);
54 std::vector<double> result(num_ordinates);
56 std::views::iota(std::size_t{0}, num_ordinates) | std::views::transform([&] (
const std::size_t i) {
57 return origin[direction] + (extent_begin + i)*
spacing[direction];