mirror of
https://github.com/hajimehoshi/ebiten.git
synced 2024-12-24 02:38:53 +01:00
graphicsdriver/metal/mtl: Remove CopyAllDevices
CopyAllDevices is not used at Ebiten, and not defined on iOS.
This commit is contained in:
parent
42cf9d1750
commit
67230ec499
@ -31,9 +31,6 @@ import (
|
||||
)
|
||||
|
||||
func Example_listDevices() {
|
||||
allDevices := mtl.CopyAllDevices()
|
||||
printJSON("all Metal devices in the system = ", allDevices)
|
||||
|
||||
device, err := mtl.CreateSystemDefaultDevice()
|
||||
if err != nil {
|
||||
log.Fatalln(err)
|
||||
|
@ -403,25 +403,6 @@ func CreateSystemDefaultDevice() (Device, error) {
|
||||
}, nil
|
||||
}
|
||||
|
||||
// CopyAllDevices returns all Metal devices in the system.
|
||||
//
|
||||
// Reference: https://developer.apple.com/documentation/metal/1433367-mtlcopyalldevices.
|
||||
func CopyAllDevices() []Device {
|
||||
d := C.CopyAllDevices()
|
||||
defer C.free(unsafe.Pointer(d.Devices))
|
||||
|
||||
ds := make([]Device, d.Length)
|
||||
for i := 0; i < len(ds); i++ {
|
||||
d := (*C.struct_Device)(unsafe.Pointer(uintptr(unsafe.Pointer(d.Devices)) + uintptr(i)*C.sizeof_struct_Device))
|
||||
|
||||
ds[i].device = d.Device
|
||||
ds[i].Headless = d.Headless != 0
|
||||
ds[i].LowPower = d.LowPower != 0
|
||||
ds[i].Name = C.GoString(d.Name)
|
||||
}
|
||||
return ds
|
||||
}
|
||||
|
||||
// Device returns the underlying id<MTLDevice> pointer.
|
||||
func (d Device) Device() unsafe.Pointer { return d.device }
|
||||
|
||||
|
@ -34,22 +34,6 @@ struct Device CreateSystemDefaultDevice() {
|
||||
return d;
|
||||
}
|
||||
|
||||
// Caller must call free(d.devices).
|
||||
struct Devices CopyAllDevices() {
|
||||
NSArray<id<MTLDevice>> *devices = MTLCopyAllDevices();
|
||||
|
||||
struct Devices d;
|
||||
d.Devices = malloc(devices.count * sizeof(struct Device));
|
||||
for (int i = 0; i < devices.count; i++) {
|
||||
d.Devices[i].Device = devices[i];
|
||||
d.Devices[i].Headless = devices[i].headless;
|
||||
d.Devices[i].LowPower = devices[i].lowPower;
|
||||
d.Devices[i].Name = devices[i].name.UTF8String;
|
||||
}
|
||||
d.Length = devices.count;
|
||||
return d;
|
||||
}
|
||||
|
||||
BOOL Device_SupportsFeatureSet(void *device, uint16_t featureSet) {
|
||||
return [(id<MTLDevice>)device supportsFeatureSet:featureSet];
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user