/** * compare a given device with the internal one * * @param HWDevice $dev device that should be compared * * @return boolean */ public function equals($dev) { if ($dev->getName() === $this->_name && $dev->getCapacity() === $this->_capacity) { return true; } else { return false; } }
/** * IDE devices * * @return void */ private function _ide() { $bufd = CommonFunctions::gdc('/proc/ide', false); foreach ($bufd as $file) { if (preg_match('/^hd/', $file)) { $dev = new HWDevice(); $dev->setName(trim($file)); if (CommonFunctions::rfts("/proc/ide/" . $file . "/media", $buf, 1)) { if (trim($buf) == 'disk') { if (CommonFunctions::rfts("/proc/ide/" . $file . "/capacity", $buf, 1, 4096, false) || CommonFunctions::rfts("/sys/block/" . $file . "/size", $buf, 1, 4096, false)) { $dev->setCapacity(trim($buf) * 512 / 1024); } } } if (CommonFunctions::rfts("/proc/ide/" . $file . "/model", $buf, 1)) { $dev->setName($dev->getName() . ": " . trim($buf)); } $this->sys->setIdeDevices($dev); } } }
/** * generate the hardware information * * @return void */ private function _buildHardware() { $dev = new HWDevice(); $hardware = $this->_xml->addChild('Hardware'); $pci = $hardware->addChild('PCI'); foreach (System::removeDupsAndCount($this->_sys->getPciDevices()) as $dev) { $tmp = $pci->addChild('Device'); $tmp->addAttribute('Name', $dev->getName()); $tmp->addAttribute('Count', $dev->getCount()); } $usb = $hardware->addChild('USB'); foreach (System::removeDupsAndCount($this->_sys->getUsbDevices()) as $dev) { $tmp = $usb->addChild('Device'); $tmp->addAttribute('Name', $dev->getName()); $tmp->addAttribute('Count', $dev->getCount()); } $ide = $hardware->addChild('IDE'); foreach (System::removeDupsAndCount($this->_sys->getIdeDevices()) as $dev) { $tmp = $ide->addChild('Device'); $tmp->addAttribute('Name', $dev->getName()); $tmp->addAttribute('Count', $dev->getCount()); if ($dev->getCapacity() !== null) { $tmp->addAttribute('Capacity', $dev->getCapacity()); } } $scsi = $hardware->addChild('SCSI'); foreach (System::removeDupsAndCount($this->_sys->getScsiDevices()) as $dev) { $tmp = $scsi->addChild('Device'); $tmp->addAttribute('Name', $dev->getName()); $tmp->addAttribute('Count', $dev->getCount()); if ($dev->getCapacity() !== null) { $tmp->addAttribute('Capacity', $dev->getCapacity()); } } $cpu = $hardware->addChild('CPU'); foreach ($this->_sys->getCpus() as $oneCpu) { $tmp = $cpu->addChild('CpuCore'); $tmp->addAttribute('Model', $oneCpu->getModel()); if ($oneCpu->getCpuSpeed() !== 0) { $tmp->addAttribute('CpuSpeed', $oneCpu->getCpuSpeed()); } if ($oneCpu->getCpuSpeedMax() !== 0) { $tmp->addAttribute('CpuSpeedMax', $oneCpu->getCpuSpeedMax()); } if ($oneCpu->getCpuSpeedMin() !== 0) { $tmp->addAttribute('CpuSpeedMin', $oneCpu->getCpuSpeedMin()); } if ($oneCpu->getTemp() !== null) { $tmp->addAttribute('CpuTemp', $oneCpu->getTemp()); } if ($oneCpu->getBusSpeed() !== null) { $tmp->addAttribute('BusSpeed', $oneCpu->getBusSpeed()); } if ($oneCpu->getCache() !== null) { $tmp->addAttribute('Cache', $oneCpu->getCache()); } if ($oneCpu->getVirt() !== null) { $tmp->addAttribute('Virt', $oneCpu->getVirt()); } if ($oneCpu->getBogomips() !== null) { $tmp->addAttribute('Bogomips', $oneCpu->getBogomips()); } if ($oneCpu->getLoad() !== null) { $tmp->addAttribute('Load', $oneCpu->getLoad()); } } }