class_docstr: ACSPO L2P SST File Reader.
docstr: Get numpy array shape for the specified dataset.
  
  Args:
      ds_id (DataID): ID of dataset that will be loaded
      ds_info (dict): Dictionary of dataset information from config file
  
  Returns:
      tuple: (rows, cols)
docstr_tok: ["Get","numpy","array","shape","for","the","specified","dataset",".","Args",":","ds_id","(","DataID",")",":","ID","of","dataset","that","will","be","loaded","ds_info","(","dict",")",":","Dictionary","of","dataset","information","from","config","file","Returns",":","tuple",":","(","rows",",","cols",")"]
code: def get_shape(self, ds_id, ds_info):
      """Get numpy array shape for the specified dataset.
  
      Args:
          ds_id (DataID): ID of dataset that will be loaded
          ds_info (dict): Dictionary of dataset information from config file
  
      Returns:
          tuple: (rows, cols)
  
      """
      var_path = ds_info.get("file_key", "{}".format(ds_id["name"]))
      if var_path + "/shape" not in self:
          # loading a scalar value
          shape = 1
      else:
          shape = self[var_path + "/shape"]
          if len(shape) == 3:
              if shape[0] != 1:
                  raise ValueError(
                      "Not sure how to load 3D Dataset with more than 1 time"
                  )
              shape = shape[1:]
      return shape
  
file_path: satpy/satpy/readers/acspo.py
imports: import logging
  from datetime import datetime
  import numpy
  from satpy.readers.netcdf_utils import NetCDF4FileHandler
label_desc: Use image node_id 3 for calling the ACSPOFileHandler obj's underlying member method code with example usage: obj.get_shape(ds_id, ds_info) and returns: shape