o
    b                     @   s   d dl mZmZmZ G dd deZG dd deZG dd deZG dd	 d	eZG d
d deZG dd deZ	G dd deZ
G dd deZG dd deZG dd deZdS )   )
XMLBuilderXMLPropertyXMLChildPropertyc                   @   0   e Zd ZdZdZddgZedddZedZd	S )
_VCPUPinz<
    Class for generating <cputune> child <vcpupin> XML
    vcpupinvcpucpusetz./@vcpuTis_int	./@cpusetN)	__name__
__module____qualname____doc__XML_NAME_XML_PROP_ORDERr   r   r	    r   r   2/usr/share/virt-manager/virtinst/domain/cputune.pyr          r   c                   @   r   )
_IOThreadPinz@
    Class for generating <cputune> child <iothreadpin> XML
    iothreadpiniothreadr	   z./@iothreadTr
   r   N)	r   r   r   r   r   r   r   r   r	   r   r   r   r   r      r   r   c                   @   8   e Zd ZdZdZg dZedZedZedddZ	d	S )

_VCPUSchedz>
    Class for generating <cputune> child <vcpusched> XML
    	vcpusched)vcpus	schedulerpriority./@vcpus./@scheduler./@priorityTr
   N)
r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   '       r   c                   @   r   )
_IOThreadSchedzB
    Class for generating <cputune> child <iothreadsched> XML
    iothreadsched)	iothreadsr   r   z./@iothreadsr    r!   Tr
   N)
r   r   r   r   r   r   r   r%   r   r   r   r   r   r   r#   3   r"   r#   c                   @   sP   e Zd ZdZdZg dZedddZedddZedZ	ed	ddZ
ed
ZdS )_CacheTuneCachez<
    Class for generating <cachetune> child <cache> XML
    cache)idleveltypesizeunit./@idTr
   ./@levelz./@typez./@sizez./@unitN)r   r   r   r   r   r   r   r(   r)   r*   r+   r,   r   r   r   r   r&   C   s    r&   c                   @   r   )
_CacheTuneMonitorz>
    Class for generating <cachetune> child <monitor> XML
    monitorr)   r   r.   Tr
   r   N)	r   r   r   r   r   r   r   r)   r   r   r   r   r   r/   Q   r   r/   c                   @   s4   e Zd ZdZdZddgZedZee	Z
eeZdS )
_CacheTunez>
    Class for generating <cputune> child <cachetune> XML
    	cachetuner   cachesr   N)r   r   r   r   r   r   r   r   r   r&   r3   r/   monitorsr   r   r   r   r1   \   s    r1   c                   @   s4   e Zd ZdZdZddgZedddZedddZd	S )
_MemoryTuneNodez<
    Class for generating <memorytune> child <node> XML
    noder(   	bandwidthr-   Tr
   z./@bandwidthN)	r   r   r   r   r   r   r   r(   r7   r   r   r   r   r5   h   s    r5   c                   @   s,   e Zd ZdZdZddgZedZee	Z
dS )_MemoryTunez?
    Class for generating <cputune> child <memorytune> XML
    
memorytuner   nodesr   N)r   r   r   r   r   r   r   r   r   r5   r:   r   r   r   r   r8   s   s    r8   c                   @   s   e Zd ZdZdZg dZedddZedddZedddZ	ed	ddZ
ed
ddZedddZedddZedddZedddZeeZedZeeZedZedddZeeZeeZeeZeeZdS )DomainCputunez,
    Class for generating <cputune> XML
    cputune)sharesperiodquotaglobal_periodglobal_quotaemulator_periodemulator_quotaiothread_periodiothread_quotavcpupinsemulatorpin_cpusetiothreadpinsemulatorsched_scheduleremulatorsched_priority
vcpuschedsiothreadscheds
cachetunesmemorytunesz./sharesTr
   z./periodz./quotaz./global_periodz./global_quotaz./emulator_periodz./emulator_quotaz./iothread_periodz./iothread_quotaz./emulatorpin/@cpusetz./emulatorsched/@schedulerz./emulatorsched/@priorityN) r   r   r   r   r   r   r   r=   r>   r?   r@   rA   rB   rC   rD   rE   r   r   rF   rG   r   rH   rI   rJ   r   rK   r#   rL   r1   rM   r8   rN   r   r   r   r   r;      s,    r;   N)
xmlbuilderr   r   r   r   r   r   r#   r&   r/   r1   r5   r8   r;   r   r   r   r   <module>   s   