class_docstr: Generic GRIB file handler.
class_docstr_tok: ["Generic","GRIB","file","handler","."]
code: def _get_area_info(self, msg, proj_params):
      lats, lons = msg.latlons()
      shape = lats.shape
      scans_positively = (
          msg.valid_key("jScansPositively")
          and msg["jScansPositively"] == 1
      )
      proj_params, lons, lats = self._get_corner_lonlat(
          proj_params, lons, lats
      )
      minmax_xy = self._get_corner_xy(
          proj_params, lons, lats, scans_positively
      )
      extents = self._get_extents(*minmax_xy, shape)
      return proj_params, shape, extents
  
imports: import logging
  from datetime import datetime
  import dask.array
  import numpy
  import pygrib
  import xarray
  from pyproj import Proj
  from pyresample import geometry
  from satpy.dataset import DataQuery
  from satpy.readers.file_handlers import BaseFileHandler
  from satpy.utils import get_legacy_chunk_size
label_desc: Use image node_id 15 for calling the GRIBFileHandler obj's underlying member method code with example usage: obj._get_area_info(msg, proj_params) and returns: proj_params,  shape,  extents