def _make_tag(base_dt, val, mdtype, sde=False):
 base_dt = np.dtype(base_dt)
 bo = boc.to_numpy_code(base_dt.byteorder)
 byte_count = base_dt.itemsize
 if (not sde):
  udt = (bo + 'u4')
  padding = (8 - (byte_count % 8))
  all_dt = [('mdtype', udt), ('byte_count', udt), ('val', base_dt)]
  if padding:
   all_dt.append(('padding', 'u1', padding))
 else:
  udt = (bo + 'u2')
  padding = (4 - byte_count)
  if (bo == '<'):
   all_dt = [('mdtype', udt), ('byte_count', udt), ('val', base_dt)]
  else:
   all_dt = [('byte_count', udt), ('mdtype', udt), ('val', base_dt)]
  if padding:
   all_dt.append(('padding', 'u1', padding))
 tag = np.zeros((1,), dtype=all_dt)
 tag['mdtype'] = mdtype
 tag['byte_count'] = byte_count
 tag['val'] = val
 return tag

def _make_tag ( base_dt , val , mdtype , sde = False ) : base_dt = np . dtype ( base_dt ) bo = boc . to_numpy_code ( base_dt . byteorder ) byte_count = base_dt . itemsize if ( not sde ) : udt = ( bo + 'u4' ) padding = ( 8 - ( byte_count % 8 ) ) all_dt = [ ( 'mdtype' , udt ) , ( 'byte_count' , udt ) , ( 'val' , base_dt ) ] if padding : all_dt . append ( ( 'padding' , 'u1' , padding ) ) else : udt = ( bo + 'u2' ) padding = ( 4 - byte_count ) if ( bo == '<' ) : all_dt = [ ( 'mdtype' , udt ) , ( 'byte_count' , udt ) , ( 'val' , base_dt ) ] else : all_dt = [ ( 'byte_count' , udt ) , ( 'mdtype' , udt ) , ( 'val' , base_dt ) ] if padding : all_dt . append ( ( 'padding' , 'u1' , padding ) ) tag = np . zeros ( ( 1 , ) , dtype = all_dt ) tag [ 'mdtype' ] = mdtype tag [ 'byte_count' ] = byte_count tag [ 'val' ] = val return tag
makes a simple matlab tag .