a
    d=ic                     @   s  d Z ddlZddl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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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l!m"Z" ddl#m$Z$ ddl%m&Z& e'e(Z)G dd de"j*ej+Z,G dd de&j-ej+Z.ej/ddej0ej1e
j2ej3ej4ej5ej6ej7ej8e j9ej:ej;ej<e$j=e,e.gZ>dd Z?dd Z@dd  ZAdS )!a  Collection of first-party plugins.

This module exists to isolate tensorboard.program from the potentially
heavyweight build dependencies for first-party plugins. This way people
doing custom builds of TensorBoard have the option to only pay for the
dependencies they want.

This module also grants the flexibility to those doing custom builds, to
automatically inherit the centrally-maintained list of standard plugins,
for less repetition.
    N)experimental_plugin)audio_plugin)core_plugin)custom_scalars_plugin)debugger_v2_plugin)distributions_plugin)graphs_plugin)histograms_plugin)hparams_plugin)images_plugin)metrics_plugin)pr_curves_plugin)profile_redirect_plugin)scalars_plugin)text_plugin)text_v2_plugin)mesh_plugin)npmi_pluginc                   @   s   e Zd ZdZdS )ExperimentalTextV2Pluginz+Angular Text Plugin marked as experimental.N__name__
__module____qualname____doc__ r   r   d/home/droni/.local/share/virtualenvs/DPS-5Je3_V2c/lib/python3.9/site-packages/tensorboard/default.pyr   7   s   r   c                   @   s   e Zd ZdZdS )ExperimentalNpmiPluginz+Angular nPMI Plugin marked as experimental.Nr   r   r   r   r   r   ?   s   r   T)Zinclude_debug_infoc                   C   s   t  t  S )a  Returns a list specifying all known TensorBoard plugins.

    This includes both first-party, statically bundled plugins and
    dynamic plugins.

    This list can be passed to the `tensorboard.program.TensorBoard` API.

    Returns:
      The list of default first-party plugins.
    )get_static_pluginsget_dynamic_pluginsr   r   r   r   get_plugins^   s    r   c                   C   s   t dd S )a  Returns a list specifying TensorBoard's default first-party plugins.

    Plugins are specified in this list either via a TBLoader instance to load the
    plugin, or the TBPlugin class itself which will be loaded using a BasicLoader.

    This list can be passed to the `tensorboard.program.TensorBoard` API.

    Returns:
      The list of default first-party plugins.

    :rtype: list[Type[base_plugin.TBLoader] | Type[base_plugin.TBPlugin]]
    N)_PLUGINSr   r   r   r   r   l   s    r   c                   C   s   dd t dD S )a  Returns a list specifying TensorBoard's dynamically loaded plugins.

    A dynamic TensorBoard plugin is specified using entry_points [1] and it is
    the robust way to integrate plugins into TensorBoard.

    This list can be passed to the `tensorboard.program.TensorBoard` API.

    Returns:
      The list of dynamic plugins.

    :rtype: list[Type[base_plugin.TBLoader] | Type[base_plugin.TBPlugin]]

    [1]: https://packaging.python.org/specifications/entry-points/
    c                 S   s   g | ]}|  qS r   )resolve).0entry_pointr   r   r   
<listcomp>   s   z'get_dynamic_plugins.<locals>.<listcomp>Ztensorboard_plugins)pkg_resourcesiter_entry_pointsr   r   r   r   r   }   s
    r   )Br   loggingr%   Ztensorboard.backendr   Ztensorboard.plugins.audior   Ztensorboard.plugins.corer   Z!tensorboard.plugins.custom_scalarr   Ztensorboard.plugins.debugger_v2r   Z tensorboard.plugins.distributionr   Ztensorboard.plugins.graphr   Ztensorboard.plugins.histogramr	   Ztensorboard.plugins.hparamsr
   Ztensorboard.plugins.imager   Ztensorboard.plugins.metricsr   Ztensorboard.plugins.pr_curver   Z$tensorboard.plugins.profile_redirectr   Ztensorboard.plugins.scalarr   Ztensorboard.plugins.textr   Ztensorboard.plugins.text_v2r   Ztensorboard.plugins.meshr   Ztensorboard.plugins.npmir   	getLoggerr   loggerZTextV2PluginZExperimentalPluginr   Z
NpmiPluginr   ZCorePluginLoaderZMetricsPluginZScalarsPluginZCustomScalarsPluginZImagesPluginZAudioPluginZDebuggerV2PluginZGraphsPluginZDistributionsPluginZHistogramsPluginZ
TextPluginZPrCurvesPluginZProfileRedirectPluginLoaderZHParamsPluginZ
MeshPluginr    r   r   r   r   r   r   r   <module>   s`   



