26 #ifndef PDI_ARRAY_DATATYPE_H_ 27 #define PDI_ARRAY_DATATYPE_H_ 34 #include <pdi/pdi_fwd.h> 35 #include <pdi/datatype.h> 66 std::string access_kind()
const override;
74 std::pair<void*, Datatype_uptr> access(
const Array_datatype& array_type,
76 std::vector<std::unique_ptr<Accessor_base>>::const_iterator remaining_begin,
77 std::vector<std::unique_ptr<Accessor_base>>::const_iterator remaining_end)
const override;
79 std::unique_ptr<Accessor_base> clone()
const override;
97 std::string access_kind()
const override;
106 std::pair<void*, Datatype_uptr> access(
const Array_datatype& array_type,
108 std::vector<std::unique_ptr<Accessor_base>>::const_iterator remaining_begin,
109 std::vector<std::unique_ptr<Accessor_base>>::const_iterator remaining_end)
const override;
111 std::unique_ptr<Accessor_base> clone()
const override;
145 size_t start()
const;
151 size_t subsize()
const;
161 bool dense()
const override;
163 size_t datasize()
const override;
165 size_t buffersize()
const override;
167 size_t alignment()
const override;
169 bool simple()
const override;
171 void* data_to_dense_copy(
void*,
const void*)
const override;
173 void* data_from_dense_copy(
void*,
const void*)
const override;
175 std::pair<void*, Datatype_uptr> subaccess_by_iterators(
void* from,
176 std::vector<std::unique_ptr<Accessor_base>>::const_iterator remaining_begin,
177 std::vector<std::unique_ptr<Accessor_base>>::const_iterator remaining_end)
const override;
179 void destroy_data(
void*)
const override;
181 std::string debug_string()
const override;
183 bool operator== (
const Datatype&)
const override;
189 #endif // PDI_ARRAY_DATATYPE_H_
Accessor to get single element from array.
Definition: array_datatype.h:61
A Datatype is a Datatype_template that accepts no argument.
Definition: datatype.h:46
Base class for datatype accesssors, that allow to get pointer to subtype.
Definition: datatype.h:52
an Array_datatype is a Datatype that represents an array: i.e storage of multiple elements of the sam...
Definition: array_datatype.h:43
Accessor to get a slice of an array, returns array of the same subtype.
Definition: array_datatype.h:84
std::unique_ptr< Datatype_template > Datatype_template_uptr
Definition: pdi_fwd.h:74
std::unique_ptr< Datatype > Datatype_uptr
Definition: pdi_fwd.h:78
Definition: array_datatype.h:37