class_docstr: An episodic ReplayBuffer with Uniform sampling.
class_docstr_tok: ["An","episodic","ReplayBuffer","with","Uniform","sampling","."]
docstr: Returns a mask of whether the given IDs are valid. Caller must lock.
code: def _get_valid_ids_mask_locked(self, episode_ids):
      """Returns a mask of whether the given IDs are valid. Caller must lock."""
      episode_locations = self._get_episode_id_location(episode_ids)
      location_matches_id = tf.equal(
          episode_ids,
          self._episodes_loc_to_id_map.sparse_read(episode_locations),
      )
      # Note that the above map is initialized with -1s.
      return (episode_ids >= 0) & location_matches_id
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import collections
  import gin
  import tensorflow
  from tf_agents import specs
  from tf_agents.replay_buffers import episodic_table
  from tf_agents.replay_buffers import replay_buffer
  from tf_agents.replay_buffers import table
  from tf_agents.utils import common
  from tensorflow.python.data.util import nest
  from tensorflow.python.layers import utils
  from tensorflow.python.ops import list_ops
  from tensorflow.python.ops.distributions import util
label_desc: Use image node_id 25 for calling the EpisodicReplayBuffer obj's underlying member method code with example usage: obj._get_valid_ids_mask_locked(episode_ids) and returns: unknown