
    Xf                     b    d dl mZ d dlmZ d dlmZmZ d dlmZ  G d dej                        Z
y)    )List)	framework)
interfaces	renderers)pluginsc                   d    e Zd ZdZdZedeej                  j                     fd       Z
d Zd Zy)FrameworkInfoz;Plugin to list the various modular components of Volatility)   r   r   returnc                     g S )N )clss    ]/home/panchajanya/Development/work/volatility3/volatility3/framework/plugins/frameworkinfo.pyget_requirementszFrameworkInfo.get_requirements   s    	    c              #     K   t         j                  j                  t         j                  j                  t         j
                  j                  t         j                  j                  t         j                  j                  t         j                  j                  t         j                  j                  d}|j                         D ]7  \  }}d|ff t        j                   |      D ]  }d|j"                  ff  9 y w)N)	AutomagicRequirementLayerLayerStackerObjectPluginRendererr      )r   	automagicAutomagicInterfaceconfigurationRequirementInterfacelayersDataLayerInterfaceStackerLayerInterfaceobjectsObjectInterfacer   PluginInterfacer   r   itemsr   class_subclasses__name__)self
categoriescategorymodule_interfaceclazzs        r   
_generatorzFrameworkInfo._generator   s     #--@@%33HH&&99&00FF ((88 ((88",,55

 +5*:*:*< 	-&H&xk"""334DE -5>>+,,-	-s   C>D c                 X    t        j                  dt        fg| j                               S )NData)r   TreeGridstrr-   )r(   s    r   runzFrameworkInfo.run%   s"    !!FC=/4??3DEEr   N)r'   
__module____qualname____doc___required_framework_versionclassmethodr   r   r   r   r   r-   r2   r   r   r   r	   r	      s@    E"+j&>&>&S&S!T  - Fr   r	   N)typingr   volatility3r   volatility3.frameworkr   r    volatility3.framework.interfacesr   r$   r	   r   r   r   <module>r<      s'   
  ! 7 4FG++ Fr   