This file is indexed.

/usr/share/psychtoolbox-3/PsychCal/CVIAdjustCalData.m is in psychtoolbox-3-common 3.0.14.20170103+git6-g605ff5c.dfsg1-1build1.

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
function calData = CVIAdjustCalData(calData,cviData)
% calData = CVIAdjustCalData(calData,cviData)
%
% Use the fine spectral measurements taken with
% the CVI (see CVIMeasurePhosphors) to adjust
% the coarse spectral measurements taken with
% the PR-650.  Actually, nothing about the
% method is particularly specific to the CVI
% and PR-650 devices, but the names in the
% structures are coded that way.
%
% 1/02/01  dhb, mpr  Wrote it.

% Make sure calData and PR-650 portion
% of cviData have same wavelength spacing.
if (CheckWls(calData.S_device,cviData.pr650.S))
	error('Wavelength sampling mismatch for PR-650 measurements.');
end

% For each phosphor, find scale factor between calibration (calData)
% and reference (cviData) measurements.  Create new spectral data
% by scaling cvi reference measurement by the scale factor.
tempS = cviData.use.S;
temp = cviData.use.spectra;
for i = 1:3
	factor(i) = cviData.pr650.spectra(:,i)\calData.P_device(:,i);
	temp(:,i) = factor(i)*temp(:,i);	
end

% Patch up calibration data
calData.S_device = tempS;
calData.P_device = temp;
calData.T_device = eye(tempS(3));

% Spline ambient to match new wavelength spacing.  Could
% model the ambient as sum of three phosphors and recreate
% a finer version, but that would be a third order correction
% and could go wrong in cases where the ambient also had
% a contribution not from the monitor phosphors.
calData.P_ambient = ...
	SplineSpd(calData.S_ambient,calData.P_ambient,tempS);
calData.S_ambient = tempS;
calData.T_ambient = eye(tempS(3));