1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
/*
PsychSourceGL/Source/Common/PsychHID/PsychHIDCloseUSBDevice.c
PROJECTS: PsychHID
PLATFORMS: All.
AUTHORS:
chrg@sas.upenn.edu cgb
HISTORY:
4.4.2009 Created.
TO DO:
*/
#include "PsychHID.h"
static char useString[] = "PsychHID('CloseUSBDevice' [, usbHandle])";
// 1
static char synopsisString[] = "Closes a generic USB device specified by 'usbHandle'. "
"Closes all generic USB devices if 'usbHandle' is omitted. ";
static char seeAlsoString[] = "";
PsychError PSYCHHIDCloseUSBDevice(void)
{
int usbHandle;
// Setup the help features.
PsychPushHelp(useString, synopsisString, seeAlsoString);
if (PsychIsGiveHelp()) {
PsychGiveHelp();
return PsychError_none;
}
// Make sure the correct number of input arguments is supplied.
PsychErrorExit(PsychCapNumInputArgs(1));
PsychErrorExit(PsychRequireNumInputArgs(0));
PsychErrorExit(PsychCapNumOutputArgs(0));
// Grab the optional device handle:
if (PsychCopyInIntegerArg(1, FALSE, &usbHandle)) {
// Specific device given. Try to close it. This will error-out if no such
// device is open:
PsychHIDOSCloseUSBDevice(PsychHIDGetUSBDevice(usbHandle));
}
else {
// No specific handle given: Close and release all open generic USB devices:
PsychHIDCloseAllUSBDevices();
}
return PsychError_none;
}
|