lwjgl/src/java/org/lwjgl/d3d/D3DAdapterIdentifier9.java

81 lines
3.0 KiB
Java

package org.lwjgl.d3d;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
public class D3DAdapterIdentifier9 {
public byte Driver[] = new byte[Direct3DConstants.MAX_DEVICE_IDENTIFIER_STRING];//512 char [MAX_DEVICE_IDENTIFIER_STRING]
public byte Description[] = new byte[Direct3DConstants.MAX_DEVICE_IDENTIFIER_STRING];//512 char [MAX_DEVICE_IDENTIFIER_STRING]
public byte DeviceName[] = new byte[32]; //32 char [32]
public long DriverVersion; //8 LARGE_INTEGER
public long VendorId; //4 DWORD
public long DeviceId; //4 DWORD
public long SubSysId; //4 DWORD
public long Revision; //4 DWORD
public GUID DeviceIdentifier = new GUID(); //16 GUID
public long WHQLLevel; //4 DWORD
private static final int D3D_ADAPTER_IDENTIFIER_BYTE_SIZE = 1100;
private ByteBuffer buffer;
public D3DAdapterIdentifier9() {
buffer = ByteBuffer.allocateDirect(D3D_ADAPTER_IDENTIFIER_BYTE_SIZE);
buffer.order(ByteOrder.nativeOrder());
}
public ByteBuffer getEmptyBuffer() {
buffer.rewind();
return buffer;
}
public ByteBuffer getBuffer() {
buffer.rewind();
buffer.put(Driver);
buffer.put(Description);
buffer.put(DeviceName);
buffer.putLong(DriverVersion);
buffer.putInt((int)VendorId);
buffer.putInt((int)DeviceId);
buffer.putInt((int)SubSysId);
buffer.putInt((int)Revision);
buffer.putInt((int)DeviceIdentifier.Data1);
buffer.putShort(DeviceIdentifier.Data2);
buffer.putShort(DeviceIdentifier.Data3);
buffer.put(DeviceIdentifier.Data4);
buffer.putInt((int)WHQLLevel);
buffer.rewind();
return buffer;
}
public void setBuffer(ByteBuffer buffer) {
buffer.rewind();
buffer.get(Driver);
buffer.get(Description);
buffer.get(DeviceName);
DriverVersion = buffer.getLong();
VendorId = buffer.getInt();
DeviceId = buffer.getInt();
SubSysId = buffer.getInt();
Revision = buffer.getInt();
DeviceIdentifier.Data1 = buffer.getInt();
DeviceIdentifier.Data2 = buffer.getShort();
DeviceIdentifier.Data3 = buffer.getShort();
buffer.get(DeviceIdentifier.Data4);
WHQLLevel = buffer.getInt();
}
public String toString() {
return
"\n Driver = " + new String(Driver) +
"\n Description = " + new String(Description) +
"\n DeviceName = " + new String(DeviceName) +
"\nDriverVersion = " + DriverVersion +
"\n VendorId = " + VendorId +
"\n DeviceId = " + DeviceId +
"\n SubSysId = " + SubSysId +
"\n Revision = " + Revision +
"\n WHQLLevel = " + WHQLLevel +
DeviceIdentifier;
}
}