class_docstr: Loader for an entire directory, maintaining multiple active file
  loaders.
  
  This class takes a directory, a factory for loaders, and optionally a
  path filter and watches all the paths inside that directory for new data.
  Each file loader created by the factory must read a path and produce an
  iterator of (timestamp, value) pairs.
  
  Unlike DirectoryWatcher, this class does not assume that only one file
  receives new data at a time; there can be arbitrarily many active files.
  However, any file whose maximum load timestamp fails an "active" predicate
  will be marked as inactive and no longer checked for new data.
docstr: Loads new values from all active files.
  
  Yields:
    All values that have not been yielded yet.
  
  Raises:
    DirectoryDeletedError: If the directory has been permanently deleted
      (as opposed to being temporarily unavailable).
code: def Load(self):
      """Loads new values from all active files.
  
      Yields:
        All values that have not been yielded yet.
  
      Raises:
        DirectoryDeletedError: If the directory has been permanently deleted
          (as opposed to being temporarily unavailable).
      """
      try:
          all_paths = io_wrapper.ListDirectoryAbsolute(self._directory)
          paths = sorted(p for p in all_paths if self._path_filter(p))
          for path in paths:
              for value in self._LoadPath(path):
                  yield value
      except tf.errors.OpError as e:
          if not tf.io.gfile.exists(self._directory):
              raise directory_watcher.DirectoryDeletedError(
                  "Directory %s has been permanently deleted"
                  % self._directory
              )
          else:
              logger.info("Ignoring error during file loading: %s" % e)
  
file_path: tensorboard/tensorboard/backend/event_processing/directory_loader.py
imports: from tensorboard.backend.event_processing import directory_watcher
  from tensorboard.backend.event_processing import io_wrapper
  from tensorboard.compat import tf
  from tensorboard.util import tb_logging
label_desc: Use image node_id 2 for calling the DirectoryLoader obj's underlying member method code with example usage: obj.Load() without return types