Skip to content

Commit a551cea

Browse files
committed
add clarifying commnet
1 parent 01091b8 commit a551cea

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

neo/rawio/blackrockrawio.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1217,11 +1217,16 @@ def _read_nev_header(self, spec, filename):
12171217

12181218
raw_ext_header = np.memmap(filename, offset=offset_dt0, dtype=dt1, shape=shape, mode="r")
12191219

1220+
# Parse extended headers by packet type
1221+
# Strategy: view() entire array first, then mask for efficiency
1222+
# Since all NEV extended header packets are fixed-width (32 bytes), temporarily
1223+
# interpreting a "NEUEVWAV" packet as "ARRAYNME" structure is safe - the raw bytes
1224+
# are just reinterpreted without copying. We immediately filter out mismatched packets
1225+
# with the mask, keeping only those that actually belong to the current packet type.
12201226
nev_ext_header = {}
12211227
for packet_id, dtype_def in header_types.items():
12221228
mask = raw_ext_header["packet_id"] == packet_id
1223-
if np.any(mask):
1224-
nev_ext_header[packet_id] = raw_ext_header.view(dtype_def)[mask]
1229+
nev_ext_header[packet_id] = raw_ext_header.view(dtype_def)[mask]
12251230

12261231
return nev_basic_header, nev_ext_header
12271232

0 commit comments

Comments
 (0)