Esempio n. 1
0
 def __init__(self, buf, mutable=False):
     self.buf = buf
     self.ptr, self.nbyte, self.block_id = self.buf.open()
     self.nbyte_commit = self.nbyte
     self.ptr = get_pointer_value(self.ptr)
     if self.ptr is not None:
         self.data = np.ndarray(
             shape=(self.nbyte,),
             buffer=_address_as_buffer(self.ptr, self.nbyte),
             dtype=np.uint8)
         self.data.flags['WRITEABLE'] = mutable
Esempio n. 2
0
 def header(self):
     size = self.header_size
     if size == 0:
         # WAR for hdr_buffer_ptr.contents crashing when size == 0
         hdr_array = np.empty(0, dtype=np.uint8)
         hdr_array.flags['WRITEABLE'] = False
         return hdr_array
     hdr_buffer = _address_as_buffer(self._header_ptr, size, readonly=True)
     hdr_array = np.frombuffer(hdr_buffer, dtype=np.uint8)
     hdr_array.flags['WRITEABLE'] = False
     return hdr_array
Esempio n. 3
0
 def header(self):
     if self._header is not None:
         return self._header
     size = self.header_size
     if size == 0:
         # WAR for hdr_buffer_ptr.contents crashing when size == 0
         hdr_array = np.empty(0, dtype=np.uint8)
         hdr_array.flags['WRITEABLE'] = False
         return json.loads(hdr_array.tobytes())
     hdr_buffer = _address_as_buffer(self._header_ptr, size, readonly=True)
     hdr_array = np.frombuffer(hdr_buffer, dtype=np.uint8)
     hdr_array.flags['WRITEABLE'] = False
     self._header = json.loads(hdr_array.tobytes())
     return self._header