1 /*
2 * Copyright 2020-2022 The OSHI Project Contributors
3 * SPDX-License-Identifier: MIT
4 */
5 package oshi.hardware;
6
7 import oshi.annotation.concurrent.Immutable;
8
9 /**
10 * <p>
11 * GraphicsCard interface.
12 * </p>
13 */
14 @Immutable
15 public interface GraphicsCard {
16
17 /**
18 * Retrieves the full name of the card.
19 *
20 * @return The name of the card.
21 */
22 String getName();
23
24 /**
25 * Retrieves the card's Device ID
26 *
27 * @return The Device ID of the card
28 */
29 String getDeviceId();
30
31 /**
32 * Retrieves the card's manufacturer/vendor
33 *
34 * @return The vendor of the card as human-readable text if possible, or the Vendor ID (VID) otherwise
35 */
36 String getVendor();
37
38 /**
39 * Retrieves a list of version/revision data from the card. Users may need to further parse this list to identify
40 * specific GPU capabilities.
41 *
42 * @return A comma-delimited list of version/revision data
43 */
44 String getVersionInfo();
45
46 /**
47 * Retrieves the Video RAM (VRAM) available on the GPU
48 *
49 * @return Total number of bytes.
50 */
51 long getVRam();
52 }