o
    i	                     @   s   d dl Z d dlZG dd dZd ddddZejejejejdZdd	 Z	G d
d dZ
e
 ZdgZedkrLed ed ed ed dS dS )    Nc                   @   s    e Zd ZdZdZdZdZdZdS )Colorz[91mz[93mz[97mz[92mz[0mN)__name__
__module____qualname__REDYELLOWWHITEGREENRESET r   r   ;/data/cameron/da3_repo/src/depth_anything_3/utils/logger.pyr      s    r            )ERRORWARNINFODEBUGc                  C   s"   t jdd } t| td S )NZDA3_LOG_LEVELr   )osenvirongetupper
LOG_LEVELS)levelr   r   r   get_env_log_level    s   r   c                   @   s<   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd ZdS )Loggerc                 C   s   t  | _d S N)r   r   )selfr   r   r   __init__&   s   zLogger.__init__c           	      O   s   | dd  }t|}|d u rtd| | j|krUt| }ddd |D }|}|dv r6|d7 }t| d| d	| t	j
 fd
|dkrLtjntji| d S d S )N:r   zUnknown log level:  c                 s   s    | ]}t |V  qd S r   )str).0argr   r   r   	<genexpr>0   s    zLogger.log.<locals>.<genexpr>)r   r   [z] filer   )splitstripr   r   
ValueErrorr   	COLOR_MAPjoinprintr   r
   sysstderrstdout)	r   	level_strargskwargsZ	level_keyZ	level_valcolormsgtagr   r   r   log)   s$   


z
Logger.logc                 O      | j dg|R i | d S )NzERROR:r6   r   r1   r2   r   r   r   error=      zLogger.errorc                 O   r7   )NzWARN:r8   r9   r   r   r   warn@   r;   zLogger.warnc                 O   r7   )NzINFO:r8   r9   r   r   r   infoC   r;   zLogger.infoc                 O   r7   )NzDEBUG:r8   r9   r   r   r   debugF   r;   zLogger.debugN)	r   r   r   r   r6   r:   r<   r=   r>   r   r   r   r   r   %   s    r   logger__main__zThis is an info messagezThis is a warning messagezThis is an error messagezThis is a debug message)r   r-   r   r   r   r   r   r	   r*   r   r   r?   __all__r   r=   r<   r:   r>   r   r   r   r   <module>   s   %


