Merge pull request #199 from kleinerm/master

Pull 10/11 bpc updates, fixes, ...

* 10 bpc + new 11 bpc support.
* DrawFormattedText left-/right justification.
* nouveau-kms workaround limited to Linux 3.13 - 3.15
* KDE: Use old-style override-redirect like on other DE's.
* Code cleanup.
* Improvements to timing test, color test scripts.
* Fix some ColorCal demos a bit.
Removing our CalStruct code that was committed on June 10.  This breaks in Octave, so we're not putting it in PTB.  Those wishing to take advantage of the new code can get it from the BrainardLabToolbox (under DavidBrainard in gitHub) -- just put this in front of PTB on your path and the new code will override PTB's standard functions.

Did this by grabbing code from the commit right before we did this and putting back the old PsychCal, plus the old CalDemo into the PsychDemos folder.

Still need to figure out what was changed in IsomerizationsInEyeDemo by Mario, to decide how to put that back.

Signed-off-by: David Brainard <brainard@psych.upenn.edu>
Add conditional on calibration code running so this will work in Brainard Lab but also elsewhere.A

Signed-off-by: David Brainard <brainard@psych.upenn.edu>
Fix these to run with and without the BrainardLab overrides.

Signed-off-by: David Brainard <brainard@psych.upenn.edu>
Fix up ComputeRMSE the way I should have to being with.

PTB contained a routine called ComputeRMSE that did not actually compute the RMSE (it computed a root fractional sum of squared errors.)

At one point I put in a warning message to this effect, but that was fairly annoying to see all the time.  So

I wrote a ComputeFSSE() that does what ComputeRMSE used to.
I changed all calls to ComputeRMSE in the toolbox to calls to ComputeFSEE().
I changed the warning in ComputeRMSE to suggest that the user change the call to one to ComputeFSSE().

In doing all this, I discovered that PTB contained two routines ComputeRMSE, one in PsychGamma and one in
PsychSignal (the latter was shadowed and never called).  I removed the one in PsychSignal (which in fact
computed the same thing as the one in PsychGamma.)

I also updated the relevant Contents.m files.

DHB

Signed-off-by: David Brainard <brainard@psych.upenn.edu>
Merge branch 'kleinerm-master' into ptb3publicmaster

* Linux nouveau-kms pageflip timestamp workaround no longer needed, so made optional (off by default).

* Screen('Computer') mac address robustness improvement on Linux.

* Improvements to PsychImaging, SetAnaglyphStereoParameters, DrawFormattedText, etc.

* BlurredMipMapDemo shader compatibility fixes.

* Documentation updates.
Merge pull request #201 from Psychtoolbox-3/ptb3publicmaster

Pull current state into public master.

* Linux nouveau-kms pageflip timestamp workaround no longer needed, so made optional (off by default).
* Screen('Computer') mac address robustness improvement on Linux.
* Improvements to PsychImaging, SetAnaglyphStereoParameters, DrawFormattedText, etc.
* BlurredMipMapDemo shader compatibility fixes.
* Documentation updates.
Merge pull request #202 from kleinerm/master

ClutAnimDemo: Fix it for gpu's with other than 256-slot gamma tables.
Added AddToMatlabPathDynamically.

Signed-off-by: David Brainard <brainard@psych.upenn.edu>
Merge branch 'master' of https://github.com/Psychtoolbox-3/Psychtoolbox-3
Remove dependency on BrainardLab toolbox.  This means a bit less gets stripped off the path, but I think that is OK for us and certainly better for everyone else.

Signed-off-by: David Brainard <brainard@psych.upenn.edu>
Deal with 2014b namespace collision for isetbio routine xyz2lab
Merge pull request #45 from Psychtoolbox-3/master

Resync with current master of official Psychtoolbox-3 repo.

* Mostly undo octave-3.8 incompatible CalStruct OOP code.
* Small other BrainardLab fixes.

Note: Testing with octave-4.2 devel branch showed that the CalStruct OOP code would have mostly worked, ie., will work once 4.2 is released. One missing item was inputParser(), and then some smal stuff.