Package oshi.hardware

Interface HardwareAbstractionLayer

All Known Implementing Classes:
AbstractHardwareAbstractionLayer, AixHardwareAbstractionLayer, FreeBsdHardwareAbstractionLayer, LinuxHardwareAbstractionLayer, MacHardwareAbstractionLayer, SolarisHardwareAbstractionLayer, WindowsHardwareAbstractionLayer

@ThreadSafe
public interface HardwareAbstractionLayer
A hardware abstraction layer. Provides access to hardware items such as processors, memory, battery, and disks.
  • Method Details

    • getComputerSystem

      ComputerSystem getComputerSystem()
      Instantiates a ComputerSystem object. This represents the physical hardware, including components such as BIOS/Firmware and a motherboard, logic board, etc.
      Returns:
      a ComputerSystem object.
    • getProcessor

      CentralProcessor getProcessor()
      Instantiates a CentralProcessor object. This represents one or more Logical CPUs.
      Returns:
      A CentralProcessor object.
    • getMemory

      GlobalMemory getMemory()
      Instantiates a GlobalMemory object.
      Returns:
      A memory object.
    • getPowerSources

      java.util.List<PowerSource> getPowerSources()
      Instantiates an UnmodifiableList of PowerSource objects, representing batteries, etc.
      Returns:
      An UnmodifiableList of PowerSource objects or an empty array if none are present.
    • getDiskStores

      java.util.List<HWDiskStore> getDiskStores()
      Instantiates an UnmodifiableList of HWDiskStore objects, representing physical hard disks or other similar storage devices
      Returns:
      An UnmodifiableList of HWDiskStore objects or an empty list if none are present.
    • getNetworkIFs

      java.util.List<NetworkIF> getNetworkIFs()
      Gets a list of NetworkIF objects, representing a network interface
      Returns:
      An UnmodifiableList of NetworkIF objects representing the interfaces
    • getDisplays

      java.util.List<Display> getDisplays()
      Instantiates an UnmodifiableList of Display objects, representing monitors or other video output devices.
      Returns:
      An UnmodifiableList of Display objects or an empty array if none are present.
    • getSensors

      Sensors getSensors()
      Instantiates a Sensors object, representing CPU temperature and fan speed
      Returns:
      A Sensors object
    • getUsbDevices

      java.util.List<UsbDevice> getUsbDevices​(boolean tree)
      Instantiates an UnmodifiableList of UsbDevice objects, representing devices connected via a usb port (including internal devices).

      If the value of tree is true, the top level devices returned from this method are the USB Controllers; connected hubs and devices in its device tree share that controller's bandwidth. If the value of tree is false, USB devices (not controllers) are listed in a single flat list.

      Parameters:
      tree - If true, returns devices connected to the existing device, accessible via UsbDevice.getConnectedDevices(). If false returns devices as a flat list with no connected device information.
      Returns:
      An UnmodifiableList of UsbDevice objects representing (optionally) the USB Controllers and devices connected to them, or an empty array if none are present
    • getSoundCards

      java.util.List<SoundCard> getSoundCards()
      Instantiates an UnmodifiableList of SoundCard objects, representing the Sound cards.
      Returns:
      An UnmodifiableList of SoundCard objects or an empty array if none are present.
    • getGraphicsCards

      java.util.List<GraphicsCard> getGraphicsCards()
      Instantiates an UnmodifiableList of GraphicsCard objects, representing the Graphics cards.
      Returns:
      An UnmodifiableList of objects or an empty array if none are present.