/* Eject the media in the currently opened device */ int PortBurn_EjectDevice(void *handle) { PBHandle *h = (PBHandle *)handle; if (!h) return pbErrNoHandle; if (!h->device) return pbErrDeviceNotOpen; h->err = DRDeviceOpenTray(h->device); if (noErr == h->err) return pbSuccess; /* success */ h->err = DRDeviceEjectMedia(h->device); if (noErr == h->err) return pbSuccess; /* success */ return pbErrCannotEject; }
/* Eject the media in the currently opened device */ int PortBurn_EjectDevice(void *handle) { PBHandle *h = (PBHandle *)handle; if (h == NULL) { return pbErrNoHandle; } if (h->device == NULL) { return pbErrDeviceNotOpen; } h->err = DRDeviceOpenTray(h->device); if (h->err == noErr) { return pbSuccess; /* success */ } h->err = DRDeviceEjectMedia(h->device); if (h->err == noErr) { return pbSuccess; /* success */ } return pbErrCannotEject; }
JNIEXPORT jboolean JNICALL Java_jdrlib_JDRDevice_nativeOpenTray(JNIEnv *env, jobject obj, jlong dev) { DRDeviceRef device = (DRDeviceRef)(long)dev; return DRDeviceOpenTray(device) == noErr ? 1 : 0; }