ó vGÂVc@sMdZddlZddlZddljZdZdefd„ƒYZdS(s device data iÿÿÿÿNs/usr/ddut ddu_dev_datacBsŒeZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z d „Z d „Z d „Z d „Zd „Zd„ZRS(s device data c Csg||_||_||_||_||_||_||_||_| |_| |_ | |_ dS(s Constructor N( titem_idtparent_item_idt descriptiont device_idt class_codetpci_patht driver_namet instance_idt attach_statust vendor_idt device_type( tselfRRRRRRRRR R R ((sddu_devdata.pyt__init__'s          cCsötjdtt|jƒt|jƒfƒ\}}|dkrhtj|IJtj t|jƒƒ‚ntjd|ƒ\}}|dkrµtj|IJtj t|jƒƒ‚n|j dƒdj ddƒj ddƒj d dƒj ƒ}|S( sget device compatible strings"%s/scripts/det_info.sh %s CLASS=%sis#/usr/bin/grep "compatible name:" %st:it(t t)s ( tcommandstgetstatusoutputtABSPATHtstrRRtsyst __stderr__t ddu_errorstDevDetailNotAvailabletsplittreplacetstrip(R tstatustoutputt output_findtcompatible_string((sddu_devdata.pytget_compatible_name_string;s"    cCsÞtjdtt|jƒt|jƒfƒ\}}|dkrhtj|IJtj t|jƒƒ‚ntjd|ƒ\}}|dkrµtj|IJtj t|jƒƒ‚n|j dƒdj ddƒj ƒ}|S(sget device binding name strings"%s/scripts/det_info.sh %s CLASS=%sis /usr/bin/grep "binding name:" %sRis R( RRRRRRRRRRRRR(R RRRtbinding_string((sddu_devdata.pytget_binding_name_stringQs     cCs|jS(N(R(R ((sddu_devdata.pyt get_item_idfscCs|jS(N(R(R ((sddu_devdata.pytget_parent_item_idiscCs|jS(N(R(R ((sddu_devdata.pytget_descriptionlscCs|jS(N(R(R ((sddu_devdata.pyt get_device_idoscCs|jS(N(R(R ((sddu_devdata.pytget_class_coderscCs|jS(N(R(R ((sddu_devdata.pyt get_pci_pathuscCs|jS(N(R(R ((sddu_devdata.pytget_driver_namexscCs|jS(N(R(R ((sddu_devdata.pytget_instance_id{scCs|jS(N(R (R ((sddu_devdata.pytget_attach_status~scCs|jS(N(R (R ((sddu_devdata.pyt get_vendor_idscCs|jS(N(R (R ((sddu_devdata.pytget_device_type„s(t__name__t __module__t__doc__R R!R#R$R%R&R'R(R)R*R+R,R-R.(((sddu_devdata.pyR#s             (R1RRtDDU.ddu_errorsRRtobjectR(((sddu_devdata.pyts