diff --git a/python/obitools3/obidms/_obidms.pyx b/python/obitools3/obidms/_obidms.pyx index 46a39a9..c9c72a9 100644 --- a/python/obitools3/obidms/_obidms.pyx +++ b/python/obitools3/obidms/_obidms.pyx @@ -274,7 +274,15 @@ cdef class OBIDMS_column : self.pointer = obi_clone_column(self.dms.pointer, column_name_b, version_number, clone_data) else : self.pointer = obi_open_column(self.dms.pointer, column_name_b, version_number) - + + + def __len__(self): + return self.pointer.header.lines_used + + + def __sizeof__(self): + return (self.pointer.header.header_size + self.pointer.header.data_size) + def __iter__(self): diff --git a/python/obitools3/obidms/capi/obidmscolumn.pxd b/python/obitools3/obidms/capi/obidmscolumn.pxd index 71bbab0..44163dd 100644 --- a/python/obitools3/obidms/capi/obidmscolumn.pxd +++ b/python/obitools3/obidms/capi/obidmscolumn.pxd @@ -16,7 +16,8 @@ cdef extern from "obidmscolumn.h" nogil: struct OBIDMS_column_header_t: bint little_endian - int header_size + size_t header_size + size_t data_size index_t line_count index_t lines_used index_t nb_elements_per_line