18 #define zarrs_assert(expr) assert(ZARRS_SUCCESS == expr)
121 size_t dimensionality,
122 uint64_t *pChunkGridShape);
134 size_t dimensionality,
135 const uint64_t *pChunkIndices,
136 uint64_t *pChunkOrigin);
148 size_t dimensionality,
149 const uint64_t *pChunkIndices,
150 uint64_t *pChunkShape);
162 size_t dimensionality,
163 const uint64_t *pChunkIndices,
178 size_t dimensionality,
179 const uint64_t *pSubsetStart,
180 const uint64_t *pSubsetShape,
181 uint64_t *pChunksStart,
182 uint64_t *pChunksShape);
216 size_t dimensionality,
217 uint64_t *pInnerChunkGridShape);
230 size_t dimensionality,
232 uint64_t *pInnerChunkShape);
255 size_t dimensionality,
268 size_t dimensionality,
269 const uint64_t *pSubsetShape,
286 size_t dimensionality,
287 const uint64_t *pChunkIndices,
288 size_t chunkBytesCount,
289 uint8_t *pChunkBytes);
306 size_t dimensionality,
307 const uint64_t *pChunkIndices,
308 size_t chunkBytesCount,
309 uint8_t *pChunkBytes);
325 size_t dimensionality,
326 const uint64_t *pSubsetStart,
327 const uint64_t *pSubsetShape,
328 size_t subsetBytesCount,
329 uint8_t *pSubsetBytes);
346 size_t dimensionality,
347 const uint64_t *pSubsetStart,
348 const uint64_t *pSubsetShape,
349 size_t subsetBytesCount,
350 uint8_t *pSubsetBytes);
362 const char* attributes);
378 size_t dimensionality,
379 const uint64_t *pChunkIndices,
380 size_t chunkBytesCount,
381 const uint8_t *pChunkBytes);
408 size_t dimensionality,
409 const uint64_t *pSubsetStart,
410 const uint64_t *pSubsetShape,
411 size_t subsetBytesCount,
412 const uint8_t *pSubsetBytes);
425 const char* metadata,
@ ZARRS_ERROR_INVALID_METADATA
@ ZARRS_ERROR_UNKNOWN_INTERSECTING_CHUNKS
@ ZARRS_ERROR_BUFFER_LENGTH
@ ZARRS_ERROR_INVALID_INDICES
@ ZARRS_ERROR_STORAGE_CAPABILITY
@ ZARRS_ERROR_STORE_PREFIX
@ ZARRS_ERROR_UNKNOWN_CHUNK_GRID_SHAPE
@ ZARRS_ERROR_UNSUPPORTED_DATA_TYPE
ZarrsResult zarrsOpenArrayRW(ZarrsStorage storage, const char *path, ZarrsArray *pArray)
uint32_t zarrsVersionPatch(void)
ZarrsResult zarrsArrayGetInnerChunkGridShape(ZarrsArray array, size_t dimensionality, uint64_t *pInnerChunkGridShape)
uint32_t zarrsVersionMinor(void)
struct ZarrsArray_T * ZarrsArray
ZarrsResult zarrsArrayGetInnerChunkShape(ZarrsArray array, size_t dimensionality, bool *pIsSharded, uint64_t *pInnerChunkShape)
struct ZarrsStorage_T * ZarrsStorage
ZarrsResult zarrsDestroyArray(ZarrsArray array)
ZarrsResult zarrsCreateShardIndexCache(ZarrsArray array, ZarrsShardIndexCache *pShardIndexCache)
ZarrsResult zarrsArrayRetrieveSubsetSharded(ZarrsArray array, ZarrsShardIndexCache cache, size_t dimensionality, const uint64_t *pSubsetStart, const uint64_t *pSubsetShape, size_t subsetBytesCount, uint8_t *pSubsetBytes)
ZarrsResult zarrsFreeString(char *string)
struct ZarrsShardIndexCache_T ZarrsShardIndexCache_T
ZarrsResult zarrsArrayGetChunksInSubset(ZarrsArray array, size_t dimensionality, const uint64_t *pSubsetStart, const uint64_t *pSubsetShape, uint64_t *pChunksStart, uint64_t *pChunksShape)
ZarrsResult zarrsArrayRetrieveChunk(ZarrsArray array, size_t dimensionality, const uint64_t *pChunkIndices, size_t chunkBytesCount, uint8_t *pChunkBytes)
ZarrsResult zarrsArrayGetMetadataString(ZarrsArray array, bool pretty, char **pMetadataString)
ZarrsResult zarrsArrayGetChunkGridShape(ZarrsArray array, size_t dimensionality, uint64_t *pChunkGridShape)
ZarrsResult zarrsArrayGetDimensionality(ZarrsArray array, size_t *dimensionality)
ZarrsResult zarrsArrayRetrieveSubset(ZarrsArray array, size_t dimensionality, const uint64_t *pSubsetStart, const uint64_t *pSubsetShape, size_t subsetBytesCount, uint8_t *pSubsetBytes)
ZarrsResult zarrsArrayGetChunkShape(ZarrsArray array, size_t dimensionality, const uint64_t *pChunkIndices, uint64_t *pChunkShape)
char * zarrsLastError(void)
ZarrsResult zarrsArrayRetrieveInnerChunk(ZarrsArray array, ZarrsShardIndexCache cache, size_t dimensionality, const uint64_t *pChunkIndices, size_t chunkBytesCount, uint8_t *pChunkBytes)
ZarrsResult zarrsDestroyStorage(ZarrsStorage storage)
ZarrsResult zarrsArrayStoreMetadata(ZarrsArray array)
ZarrsResult zarrsArrayGetSubsetSize(ZarrsArray array, size_t dimensionality, const uint64_t *pSubsetShape, size_t *subsetSize)
ZarrsResult zarrsArrayGetShape(ZarrsArray array, size_t dimensionality, uint64_t *pShape)
ZarrsResult zarrsArrayGetChunkSize(ZarrsArray array, size_t dimensionality, const uint64_t *pChunkIndices, size_t *chunkSize)
struct ZarrsStorage_T ZarrsStorage_T
ZarrsResult zarrsDestroyShardIndexCache(ZarrsShardIndexCache shardIndexCache)
ZarrsResult zarrsArrayStoreChunk(ZarrsArray array, size_t dimensionality, const uint64_t *pChunkIndices, size_t chunkBytesCount, const uint8_t *pChunkBytes)
uint32_t zarrsVersion(void)
ZarrsResult zarrsArraySetAttributes(ZarrsArray array, const char *attributes)
struct ZarrsArray_T ZarrsArray_T
uint32_t zarrsVersionMajor(void)
ZarrsResult zarrsArrayStoreSubset(ZarrsArray array, size_t dimensionality, const uint64_t *pSubsetStart, const uint64_t *pSubsetShape, size_t subsetBytesCount, const uint8_t *pSubsetBytes)
struct ZarrsShardIndexCache_T * ZarrsShardIndexCache
ZarrsResult zarrsCreateStorageFilesystem(const char *path, ZarrsStorage *pStorage)
ZarrsResult zarrsArrayGetDataType(ZarrsArray array, ZarrsDataType *pDataType)
ZarrsResult zarrsArrayGetAttributesString(ZarrsArray array, bool pretty, char **pAttributesString)
ZarrsResult zarrsCreateArrayRW(ZarrsStorage storage, const char *path, const char *metadata, ZarrsArray *pArray)
ZarrsResult zarrsArrayGetChunkOrigin(ZarrsArray array, size_t dimensionality, const uint64_t *pChunkIndices, uint64_t *pChunkOrigin)