code: def get_data_handlers(self):
      logging.info(f"loading data for {self.manifest}")
      self._codes = np.load(f"{self.manifest}.code.npy", mmap_mode="r")
      self._durs = np.load(f"{self.manifest}.dur.npy", mmap_mode="r")
  
      if self.discrete_f0:
          if self.config.f0_vq_type == "precomp":
              self._f0s = np.load(
                  f"{self.manifest}.{self.config.f0_vq_name}.npy",
                  mmap_mode="r",
              )
          elif self.config.f0_vq_type == "naive":
              self._f0s = np.load(
                  f"{self.manifest}.f0.npy", mmap_mode="r"
              )
              quantizers_path = self.config.get_f0_vq_naive_quantizer(
                  self.log_f0,
                  self.normalize_f0_mean,
                  self.normalize_f0_std,
              )
              quantizers = torch.load(quantizers_path)
              n_units = self.config.f0_vq_n_units
              self._f0_quantizer = torch.from_numpy(quantizers[n_units])
          else:
              raise ValueError(
                  f"f0_vq_type {self.config.f0_vq_type} not supported"
              )
      else:
          self._f0s = np.load(f"{self.manifest}.f0.npy", mmap_mode="r")
  
imports: import json
  import logging
  import os
  import random
  from pathlib import Path
  import numpy
  import torch
  import torch.utils.data
  from .None import data_utils
  from fairseq.data.fairseq_dataset import FairseqDataset
label_desc: Use image node_id 2 for calling the CodeDataset obj's underlying member method code with example usage: obj.get_data_handlers() without return types