class_docstr: A file handler for CLAVRx files.
class_docstr_tok: ["A","file","handler","for","CLAVRx","files","."]
docstr: Automatically determine datasets provided by this file.
docstr_tok: ["Automatically","determine","datasets","provided","by","this","file","."]
code: def available_datasets(self, configured_datasets=None):
      """Automatically determine datasets provided by this file."""
      self.sensor = _get_sensor(self.file_content.get("/attr/sensor"))
      self.platform = _get_platform(
          self.file_content.get("/attr/platform")
      )
  
      nadir_resolution = self.get_nadir_resolution(self.sensor)
      coordinates = ("longitude", "latitude")
      handled_variables = set()
  
      # update previously configured datasets
      for is_avail, ds_info in configured_datasets or []:
          this_res = ds_info.get("resolution")
          this_coords = ds_info.get("coordinates")
          # some other file handler knows how to load this
          if is_avail is not None:
              yield is_avail, ds_info
  
          var_name = ds_info.get("file_key", ds_info["name"])
          matches = self.file_type_matches(ds_info["file_type"])
          # we can confidently say that we can provide this dataset and can
          # provide more info
          if (
              matches
              and var_name in self
              and this_res != nadir_resolution
          ):
              handled_variables.add(var_name)
              new_info = (
                  ds_info.copy()
              )  # don't mess up the above yielded
              new_info["resolution"] = nadir_resolution
              if self._is_polar() and this_coords is None:
                  new_info["coordinates"] = coordinates
              yield True, new_info
          elif is_avail is None:
              # if we didn't know how to handle this dataset and no one else did
              # then we should keep it going down the chain
              yield is_avail, ds_info
  
      # add new datasets
      for var_name, val in self.file_content.items():
          if isinstance(val, SDS):
              ds_info = {
                  "file_type": self.filetype_info["file_type"],
                  "resolution": nadir_resolution,
                  "name": var_name,
              }
              if self._is_polar():
                  ds_info["coordinates"] = ["longitude", "latitude"]
              yield True, ds_info
  
imports: import logging
  import os
  from glob import glob
  from typing import Optional, Union
  import netCDF4
  import numpy
  import xarray
  from pyresample import geometry
  from satpy.readers.file_handlers import BaseFileHandler
  from satpy.readers.hdf4_utils import SDS, HDF4FileHandler
  from satpy.utils import get_legacy_chunk_size
label_desc: Use image node_id 6 for calling the CLAVRXHDF4FileHandler obj's underlying member method code with example usage: obj.available_datasets(configured_datasets) without return types