/** * Returns extension enum values. * * <p>Enumeration/token values are device independent, but tokens defined for extensions might not be present for a given device. Using a {@code NULL} handle is * legal, but only the tokens defined by the AL core are guaranteed. Availability of extension tokens depends on the ALC extension.</p> * * @param deviceHandle the device to query * @param enumName the enum name */ @NativeType("ALCenum") public static int alcGetEnumValue(@NativeType("ALCdevice const *") long deviceHandle, @NativeType("ALCchar const *") ByteBuffer enumName) { if (CHECKS) { checkNT1(enumName); } return nalcGetEnumValue(deviceHandle, memAddress(enumName)); }
/** * Returns extension enum values. * * <p>Enumeration/token values are device independent, but tokens defined for extensions might not be present for a given device. Using a {@code NULL} handle is * legal, but only the tokens defined by the AL core are guaranteed. Availability of extension tokens depends on the ALC extension.</p> * * @param deviceHandle the device to query * @param enumName the enum name */ @NativeType("ALCenum") public static int alcGetEnumValue(@NativeType("ALCdevice const *") long deviceHandle, @NativeType("ALCchar const *") CharSequence enumName) { MemoryStack stack = stackGet(); int stackPointer = stack.getPointer(); try { stack.nASCII(enumName, true); long enumNameEncoded = stack.getPointerAddress(); return nalcGetEnumValue(deviceHandle, enumNameEncoded); } finally { stack.setPointer(stackPointer); } }