code: def _make_bti_digitization(
      info, head_shape_fname, convert, use_hpi, bti_dev_t, dev_ctf_t
  ):
      with info._unlock():
          if head_shape_fname:
              logger.info(
                  "... Reading digitization points from %s"
                  % head_shape_fname
              )
  
              nasion, lpa, rpa, hpi, dig_points = _read_head_shape(
                  head_shape_fname
              )
              (
                  info["dig"],
                  dev_head_t,
                  ctf_head_t,
              ) = _make_bti_dig_points(
                  nasion,
                  lpa,
                  rpa,
                  hpi,
                  dig_points,
                  convert,
                  use_hpi,
                  bti_dev_t,
                  dev_ctf_t,
              )
          else:
              logger.info(
                  "... no headshape file supplied, doing nothing."
              )
              info["dig"] = None
              dev_head_t = Transform("meg", "head", trans=None)
              ctf_head_t = Transform("ctf_head", "head", trans=None)
  
      info.update(
          dev_head_t=dev_head_t,
          dev_ctf_t=dev_ctf_t,
          ctf_head_t=ctf_head_t,
      )
  
      return info
  
imports: import functools
  import os.path
  from io import BytesIO
  from itertools import count
  import numpy
  from ..._fiff._digitization import _make_bti_dig_points
  from ..._fiff.constants import FIFF
  from ..._fiff.meas_info import _empty_info
  from ..._fiff.tag import _coil_trans_to_loc, _loc_to_coil_trans
  from ..._fiff.utils import _mult_cal_one, read_str
  from ...transforms import Transform, combine_transforms, invert_transform
  from ...utils import _stamp_to_dt, _validate_type, logger, path_like, verbose
  from ..base import BaseRaw
  from .constants import BTI
  from .read import read_char, read_dev_header, read_double, read_double_matrix, read_float, read_float_matrix, read_int16, read_int16_matrix, read_int32, read_int64, read_transform, read_uint16, read_uint32
label_desc: Use image node_id 23 for calling a global function with example usage: _make_bti_digitization(info, head_shape_fname, convert, use_hpi, bti_dev_t, dev_ctf_t) and returns: info