/usr/share/psychtoolbox-3/PsychHardware/GetKeypadIndices.m is in psychtoolbox-3-common 3.0.9+svn2579.dfsg1-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 | function [keypadIndices, productNames]= GetKeypadIndices
% keypadIndices= GetKeypadIndices
%
% OS X: ___________________________________________________________________
%
% The PsychHID assigns each USB HID device connected to you computer a
% unique index. GetKeypadIndices returns the indices for those HID
% devices which are keypads. The product names of each keypad are
% returned in a second argument which is useful to identify the keypad
% associated with an index. For complete information on a keypad use
% PsychHID('Devices').
%
% OS 9: ___________________________________________________________________
%
% GetKeypadIndices does not exist in OS 9.
%
% WINDOWS: ________________________________________________________________
%
% GetKeypadIndices does not exist in Windows.
%
% _________________________________________________________________________
%
% see also: GetGamepadIndices, GetKeyBoardIndices
% HISTORY
% 12/17/09 rpw Wrote it.
keypadIndices=[];
productNames=cell(0);
% Enumerate all HID devices:
if ~IsOSX
% On Linux we only enumerate type 4 - slave keyboard devices. These are what we want:
LoadPsychHID;
d = PsychHID('Devices', 4);
else
% On other OS'es enumerate everything and filter later:
d = PsychHID('Devices');
end
for i =1:length(d);
if d(i).usagePageValue==1 && d(i).usageValue == 7
keypadIndices(end+1)=d(i).index; %#ok<AGROW>
productNames{end+1}=d(i).product; %#ok<AGROW>
end
end
|