class_docstr: Custom file reader for finding VIIRS SDR geolocation at runtime.
docstr: Filter out file using metadata from the filenames.
  
  This sorts out the different lon and lat datasets depending on TC is
  desired or not.
docstr_tok: ["Filter","out","file","using","metadata","from","the","filenames",".","This","sorts","out","the","different","lon","and","lat","datasets","depending","on","TC","is","desired","or","not","."]
code: def filter_filenames_by_info(self, filename_items):
      """Filter out file using metadata from the filenames.
  
      This sorts out the different lon and lat datasets depending on TC is
      desired or not.
      """
      filename_items = list(filename_items)
      geo_keep = []
      geo_del = []
      viirs_del = []
      for filename, filename_info in filename_items:
          datasets = filename_info["datasets"].split("-")
          if not self._is_viirs_dataset(datasets):
              viirs_del.append(filename)
  
          if ("GITCO" in datasets) or ("GMTCO" in datasets):
              if self.use_tc is False:
                  geo_del.append(filename)
              else:
                  geo_keep.append(filename)
          elif ("GIMGO" in datasets) or ("GMODO" in datasets):
              if self.use_tc is True:
                  geo_del.append(filename)
              else:
                  geo_keep.append(filename)
      if geo_keep:
          filename_items = self._remove_geo_datasets_from_files(
              filename_items, geo_del
          )
  
      filename_items = self._remove_non_viirs_datasets_from_files(
          filename_items, viirs_del
      )
      return super().filter_filenames_by_info(filename_items)
  
imports: import logging
  import os.path
  from contextlib import suppress
  from datetime import datetime, timedelta
  from glob import glob
  import numpy
  from satpy.readers.viirs_atms_sdr_base import ATMS_DATASET_KEYS, DATASET_KEYS, VIIRS_DATASET_KEYS, JPSS_SDR_FileHandler
  from satpy.readers.yaml_reader import FileYAMLReader
label_desc: Use image node_id 3 for calling the VIIRSSDRReader obj's underlying member method code with example usage: obj.filter_filenames_by_info(filename_items) and returns: super