3#include <iolink/IOLinkAPI.h>
4#include <iolink/Indexer.h>
5#include <iolink/Region.h>
6#include <iolink/Vector.h>
7#include <iolink/storage/RandomAccess.h>
13class InternalRegionCopier;
119 void copy(
const uint8_t* src, uint8_t* dst);
127 void copy(std::shared_ptr<RandomAccess> src, uint8_t* dst);
135 void copy(
const uint8_t* src, std::shared_ptr<RandomAccess> dst);
138 InternalRegionCopier* m_impl;
Stores information about a data type.
Definition: DataType.h:162
This class is used to index a classic array into a multi dimensional array.
Definition: Indexer.h:36
This class contains the algorithms used to copy data beetween two regions of N dimensionnal data.
Definition: RegionCopier.h:37
RegionCopier(const Indexer &srcindexer, const RegionXu64 &srcRegion, DataType dataType)
Shortened constructor in the case if the destination has the same dimensions as the region itself.
void copy(const uint8_t *src, uint8_t *dst)
Copy data from memory, to memory.
RegionCopier(const RegionXu64 &dstRegion, const Indexer &dstIndexer, DataType dataType)
Shortened constructor in the case if the source has the same dimensions as the region itself.
void copy(std::shared_ptr< RandomAccess > src, uint8_t *dst)
Copy data from a storage to memory.
RegionCopier(const RegionCopier &other)
Copy constructor.
~RegionCopier()
Destructor.
RegionCopier(const Indexer &srcIndexer, const Indexer &dstIndexer, const VectorXu64 &srcOrigin, const VectorXu64 &dstOrigin, const VectorXu64 ®ionSize, DataType dataType)
Build a copier with all the parameters.
void copy(const uint8_t *src, std::shared_ptr< RandomAccess > dst)
Copy data from memory to a storage.
RegionCopier & operator=(const RegionCopier &other)
Assignation operator.
A Region using dynamic vectors.
Definition: RegionX.h:14
A dynamically sized arithmetic vector.
Definition: VectorX.h:18
All IOLink symbols are enclosed in this namespace.
Definition: ArrayX.h:8