
    BVh                     v    d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddZ	 G d	 d
ej                        Zy)z1The implementation of `tf.data.Dataset.prefetch`.    )dataset_ops)
debug_mode)dtypes)ops)gen_dataset_opsNc                 B    t         j                  r| S t        | ||      S )%See `Dataset.prefetch()` for details.)name)r   
DEBUG_MODE_PrefetchDataset)input_datasetbuffer_sizer
   s      V/home/dcms/DCMS/lib/python3.12/site-packages/tensorflow/python/data/ops/prefetch_op.py	_prefetchr      s     	-4	@@    c                   $     e Zd ZdZd fd	Z xZS )r   z5A `Dataset` that asynchronously prefetches its input.c                    || _         |t        j                  }t        j                  |t
        j                  d      | _        || _        t        j                  |j                        5  t        j                  |j                  f| j                  ||t        j                  k(  d| j                  }ddd       t        | =  |       y# 1 sw Y   xY w)r	   Nr   )dtyper
   )r   slack_periodlegacy_autotune)_input_datasetr   AUTOTUNEr   convert_to_tensorr   int64_buffer_size_namecolocate_with_variant_tensorr   prefetch_dataset_common_argssuper__init__)selfr   r   r   r
   variant_tensor	__class__s         r   r"   z_PrefetchDataset.__init__"   s    'D((k--6<<m=DDJ 
		=88	9 &77

'
'''#&+*>*>>	
 n 
G]N3 s   ,A
CC)NN)__name__
__module____qualname____doc__r"   __classcell__)r%   s   @r   r   r      s    =4 4r   r   )N)r)   tensorflow.python.data.opsr   r   tensorflow.python.frameworkr   r   tensorflow.python.opsr   r   UnaryUnchangedStructureDatasetr    r   r   <module>r0      s1    8 2 1 . + 1A4{AA 4r   