class_docstr: NetCDF4 reader for VIIRS Active Fires.
class_docstr_tok: ["NetCDF4","reader","for","VIIRS","Active","Fires","."]
docstr: Get information of available datasets in this file.
  
  Args:
      configured_datasets (list): Series of (bool or None, dict) in the
          same way as is returned by this method (see below). The bool
          is whether the dataset is available from at least one
          of the current file handlers. It can also be ``None`` if
          no file handler before us knows how to handle it.
          The dictionary is existing dataset metadata. The dictionaries
          are typically provided from a YAML configuration file and may
          be modified, updated, or used as a "template" for additional
          available datasets. This argument could be the result of a
          previous file handler's implementation of this method.
  
  Returns:
      Iterator of (bool or None, dict) pairs where dict is the
      dataset's metadata. If the dataset is available in the current
      file type then the boolean value should be ``True``, ``False``
      if we **know** about the dataset but it is unavailable, or
      ``None`` if this file object is not responsible for it.
docstr_tok: ["Get","information","of","available","datasets","in","this","file",".","Args",":","configured_datasets","(","list",")",":","Series","of","(","bool","or","None",",","dict",")","in","the","same","way","as","is","returned","by","this","method","(","see","below",")",".","The","bool","is","whether","the","dataset","is","available","from","at","least","one","of","the","current","file","handlers",".","It","can","also","be","``","None","``","if","no","file","handler","before","us","knows","how","to","handle","it",".","The","dictionary","is","existing","dataset","metadata",".","The","dictionaries","are","typically","provided","from","a","YAML","configuration","file","and","may","be","modified",",","updated",",","or","used","as","a","``","template","''","for","additional","available","datasets",".","This","argument","could","be","the","result","of","a","previous","file","handler","'s","implementation","of","this","method",".","Returns",":","Iterator","of","(","bool","or","None",",","dict",")","pairs","where","dict","is","the","dataset","'s","metadata",".","If","the","dataset","is","available","in","the","current","file","type","then","the","boolean","value","should","be","``","True","``",",","``","False","``","if","we","*","*","know","*","*","about","the","dataset","but","it","is","unavailable",",","or","``","None","``","if","this","file","object","is","not","responsible","for","it","."]
code: def available_datasets(self, configured_datasets=None):
      """Get information of available datasets in this file.
  
      Args:
          configured_datasets (list): Series of (bool or None, dict) in the
              same way as is returned by this method (see below). The bool
              is whether the dataset is available from at least one
              of the current file handlers. It can also be ``None`` if
              no file handler before us knows how to handle it.
              The dictionary is existing dataset metadata. The dictionaries
              are typically provided from a YAML configuration file and may
              be modified, updated, or used as a "template" for additional
              available datasets. This argument could be the result of a
              previous file handler's implementation of this method.
  
      Returns:
          Iterator of (bool or None, dict) pairs where dict is the
          dataset's metadata. If the dataset is available in the current
          file type then the boolean value should be ``True``, ``False``
          if we **know** about the dataset but it is unavailable, or
          ``None`` if this file object is not responsible for it.
  
      """
      # keep track of what variables the YAML has configured, so we don't
      # duplicate entries for them in the dynamic portion
      handled_var_names = set()
      for is_avail, ds_info in configured_datasets or []:
          file_key = ds_info.get("file_key", ds_info["name"])
          # we must add all variables here even if another file handler has
          # claimed the variable. It could be another instance of this file
          # type and we don't want to add that variable dynamically if the
          # other file handler defined it by the YAML definition.
          handled_var_names.add(file_key)
          if is_avail is not None:
              # some other file handler said it has this dataset
              # we don't know any more information than the previous
              # file handler so let's yield early
              yield is_avail, ds_info
              continue
          if self.file_type_matches(ds_info["file_type"]) is None:
              # this is not the file type for this dataset
              yield None, ds_info
              continue
          yield file_key in self.nc, ds_info
  
      yield from self._dynamic_variables_from_file(handled_var_names)
  
imports: from __future__ import annotations
  import logging
  from typing import Iterable
  import dask.array
  import xarray
  from satpy import DataID
  from satpy.readers.file_handlers import BaseFileHandler
  from satpy.utils import get_chunk_size_limit
label_desc: Use image node_id 10 for calling the VIIRSJRRFileHandler obj's underlying member method code with example usage: obj.available_datasets(configured_datasets) without return types