Skip to content

Commit 20bdad5

Browse files
committed
mid-way through refactor
1 parent 6352a73 commit 20bdad5

File tree

2 files changed

+499
-331
lines changed

2 files changed

+499
-331
lines changed

zarr/ext.pxd

Lines changed: 28 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,20 @@ cdef class AbstractChunk:
88
cdef int _shuffle
99
cdef tuple _shape
1010
cdef dtype _dtype
11-
cdef void get(self, ndarray array)
12-
cdef void put(self, ndarray array)
13-
# these methods to be overridden in sub-classes
14-
cdef tuple retrieve(self)
15-
cdef void store(self, char *data, size_t nbytes, size_t cbytes)
16-
cdef void clear(self)
11+
cdef size_t _size
12+
cdef size_t _itemsize
13+
cdef size_t _nbytes
14+
# override in sub-classes
15+
cdef void get(self, char *dest)
16+
cdef void put(self, char *source)
1717

1818

1919
cdef class Chunk(AbstractChunk):
20-
cdef size_t _nbytes, _cbytes
2120
cdef char *_data
22-
cdef free(self)
21+
cdef size_t _nbytes
22+
cdef size_t _blocksize
23+
cdef void clear(self)
24+
cdef void free(self)
2325

2426

2527
cdef class SynchronizedChunk(Chunk):
@@ -28,20 +30,31 @@ cdef class SynchronizedChunk(Chunk):
2830

2931
cdef class PersistentChunk(AbstractChunk):
3032
cdef object _path
31-
cdef read_header(self)
32-
cdef read(self)
33-
cdef write(self, bytes data)
33+
cdef dict read_header(self)
34+
cdef bytes read(self)
35+
cdef void write(self, bytes data)
36+
37+
38+
cdef class SynchronizedPersistentChunk(PersistentChunk):
39+
# TODO
40+
pass
3441

3542

3643
cdef class AbstractArray:
37-
cdef bytes _cname
38-
cdef int _clevel
39-
cdef int _shuffle
4044
cdef tuple _shape
4145
cdef tuple _chunks
4246
cdef dtype _dtype
43-
cdef ndarray _cdata
47+
cdef size_t _size
48+
cdef size_t _itemsize
49+
cdef size_t _nbytes
50+
cdef bytes _cname
51+
cdef int _clevel
52+
cdef int _shuffle
4453
cdef object _fill_value
54+
# override in sub-classes
55+
cdef void init_chunks(self)
56+
cdef AbstractChunk create_chunk(self, tuple cidx)
57+
cdef AbstractChunk get_chunk(self, tuple cidx)
4558

4659

4760
cdef class Array(AbstractArray):

0 commit comments

Comments
 (0)