commit 5c97329dd35909847e2120b0b368b2723ffe5a44
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 9 22:24:56 2013 +0200

    Fix a bug where PaddingEffect could create assertion errors.
    
    The ratinale is explained in the comment, but in short, PaddingEffect
    could convert blank to premultiplied alpha without realizing that
    it then needed linear light (since premultiplied alpha in our case
    is defined as being in linear light). Also added a unit test.
    
    Reported by Christophe Thommeret.

commit 58e7b9a8164bdaad7b0c698b2d0d80db53d79a5c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Sep 29 00:16:48 2013 +0200

    Clip below-zero (out-of-gamut) colors in LiftGammaGainEffect.
    
    pow(x, y) for x < 0 is undefined, and behaves differently on nVidia
    and Intel. This can reasonably happen when having inputs from a different
    gamut, or just a complex chain before the LGG effect; there's nothing
    in Movit that prohibits out-of-sRGB-gamut colors. Thus, we need to detect
    such inputs and clamp them.
    
    We could in theory check for the special case of y=1 (no gamma change)
    and allow negative values through then, but this wouldn't seem like a good
    solution, especially if animating gamma.
    
    Found and debugged by Christophe Thommeret.

commit 29f588a91a202a6d515dfb7383ecacc25668b7f7
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Feb 6 01:09:27 2013 +0100

    Make building the demo app optional if SDL_image and/or libpng12 are not found.

commit 20ee8e4fc617cf738a64c979bd5689b3bb03cecd
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Feb 5 10:26:49 2013 +0100

    Add a pkg-config variable “shaderdir” to locate the shaders.
    
    Patch from Dan Dennedy.

commit 534acae966e3b9dff5501193ce9b863afb7a41da
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Feb 5 10:15:02 2013 +0100

    Install defs.h on make install, since it is needed by effect.h.

commit 36c525fc42f63bde0ef2ea48554a17a7e18411de
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 16:39:44 2013 +0100

    Put the resample alpha handling on the right effect.

commit 04fa50e1587057705dccb6e539378415c52209ad
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 16:09:27 2013 +0100

    Indentation fix in Makefile.in.

commit 5688400bdb6ddee6aba7f53f1ab6ae75a2e654c4
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 16:06:50 2013 +0100

    Do not call autoheader, since we do not use config.h.

commit 07f8e190c12f4b7883f7891b0c5b03d361cd97fb
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 16:06:35 2013 +0100

    Use autoconf defaults for CXX and CXXFLAGS.

commit d41e82b7cc456c945dbc460b2ffdc13a80f6505f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 16:04:12 2013 +0100

    Rename RGBATriplet to RGBATuple, to avoid silliness.

commit 5df87586a23c6287d00014c781beba3be8297eb4
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 15:17:39 2013 +0100

    Make util.h private to the effects; instead, defs.h contains what effect.h needs. Keeps some junk out of the namespace of the client.

commit ac4fc36aa70ffefb6b9632dc0abea5cbbce5387b
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 15:14:11 2013 +0100

    Prefix include guards with _MOVIT to avoid clashes with external files.

commit d98081df26d115a46404baaa83e9a927ebe37b87
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 13:52:53 2013 +0100

    Small cleanup in movit.pc.in.

commit 6278a96c8e0ea5df9d831ecd5b893f831ddc8297
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 13:39:43 2013 +0100

    Add a distclean target.

commit af82a6c84f57851d16939b86188afb5fb80819d0
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 13:39:34 2013 +0100

    Update README for the new output alpha constants.

commit e36d39701c95b3d0712ccdd05a46e747707d4880
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 13:37:44 2013 +0100

    Fix cleaning of .dot and .frag files.

commit f4919e93c097501c8adcdfe11b7e79cab2f1cc5c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 13:35:18 2013 +0100

    Add a pkg-config file.

commit ac040289928cdf3554ce884575afab17565e6c67
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 13:34:21 2013 +0100

    Makefile should now be in .gitignore.

commit 82c71bc88157a182d739b5c763dbbcfd4b8eeef8
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 13:27:05 2013 +0100

    Remove stray file movit_pch.h, which was never meant to be checked in.

commit f40669de9c7e05e009e67e51a1a60773ac7e5156
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 13:25:32 2013 +0100

    Switch to autoconf to find libraries.
    
    Also, make a rudimentary make install command.
    
    We don't use anything fancy from autoconf yet (in particular,
    no config.h file), and we don't use automake or libtool.
    Most likely, this will happen later.

commit 2682dbe4264329f3e8a15f8b29c95be4c855bbef
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Feb 3 13:18:41 2013 +0100

    Remove obsolete files header.vert and footer.vert.

commit 46cec0349282daa06df45279fb5d4e49add461ae
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Feb 2 15:47:23 2013 +0100

    Add some missing tests to .gitignore.

commit c208d2719d48f7676d73b6f406f2417ec147acae
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Feb 2 14:44:26 2013 +0100

    Stop linking unit tests et al against SDL_image and other things that only the demo program needs.

commit f7e302b40026b15d1606269324a31953a1eadb80
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Feb 2 14:34:21 2013 +0100

    Remove an unused function. Found by Clang.

commit ad66f9714e4a36008c341355700272a52484a785
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Feb 2 14:32:01 2013 +0100

    Split out some private utilities into effect_util.cpp, so we do not need to include e.g. Eigen from effect.h.

commit 37f56fcbe571b2322243f6de59494bf9e0cbb37a
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Feb 2 14:11:29 2013 +0100

    Run include-what-you-use over all of movit. Some hand tuning.

commit d7b26059d60a5debd032b4a3e887b612b19dd488
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Feb 2 02:43:08 2013 +0100

    Fix alpha handling for blur; it needs to be on the working (rewritten-to) effect.

commit 7af4d1b54ba141fdb74cd13ddc6110708855d157
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Feb 2 02:35:18 2013 +0100

    Add a new alpha handling method, INPUT_PREMULTIPLIED_ALPHA_KEEP_BLANK.
    
    This should fix most of the problems where you only process inputs
    without alpha, but the framework still inserts an AlphaDivisionEffect
    at the end because it loses track of the blank alpha state throughout
    the pipeline and the output expects postmultiplied alpha.
    
    There's one important case left, though: MixEffect will always reset
    tha alpha state to premultiplied. We should probably fix that too
    at some later stage.

commit 572e7aaa57028d7eda4bc445a6249637134a2b02
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Feb 2 02:18:22 2013 +0100

    Rename the OutputAlphaFormat enums; they had gotten inconsistent after the last alpha-related rename.

commit 5d4c0425579de66b3e2dd7d0095e890278f8efcf
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Feb 2 00:38:46 2013 +0100

    Give the alpha enums somewhat better/more consistent names, and shuffle them around a bit.

commit 2322070a3dbeb6b46b39cca07a0fbf20e95f5468
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Feb 1 01:03:00 2013 +0100

    In resizing effects, add the notion of a “virtual output size”.
    
    This is the size that the effect wants to be perceived as for the next
    effect in the chain, which is useful if you e.g. have a blur and then
    padding. Even though the blur might rescale the image down from e.g.
    512x512 to 128x128 before blurring (in case of a large blur), and this
    size is what actually comes out in the texture at the other end,
    it still wants to be treated as a 512x512 image when adding padding.
    
    Reported by Christophe Thommeret.

commit 682b1da129e2f61109d83463cec344bde7392e9a
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Feb 1 01:02:55 2013 +0100

    Give SizeStoringEffect an effect_type_id(), for easier debugging of the unit test.

commit c59abdb997a1d1d703ac5dd71513dea03628a53e
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Jan 29 20:11:23 2013 +0100

    If all inputs to an effect have the same input size, use that instead of fitting to the aspect.
    
    The common case here is one-input effects on overlays.
    Reported by Christophe Thommeret.

commit 3702fd5c7d6121bab0ff5726804e6591038406b3
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Jan 24 10:22:59 2013 +0100

    Fix a Clang warning.
    
    Patch by Dan Dennedy.

commit fc55857d9ccf1edcc141fa0853a8bf2d6b40b4dc
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Jan 24 00:43:26 2013 +0100

    Fix a bug where intermediate phase outputs could get too low height.
    
    Basically our aspect ratio adjustment and lack of proper roundoff
    could conspire to let e.g. mix(1280x720, 939x939) = 1669x938,
    which is obviously wrong. I could probably have fixed it with
    an extra lrintf(), but it seems more robust to simply avoid the
    extra conversion (ie., never convert height -> width -> height).
    
    Add a unit test to verify.

commit e2962f03fe8fb0b1c47be56eca26761da97453a0
Merge: ad27ef8 22c2b8f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Jan 22 23:59:19 2013 +0100

    Merge remote-tracking branch 'origin/master'

commit 22c2b8fb28b152664d5ad6fe7420e1e37904bf95
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Jan 22 00:41:03 2013 +0100

    Allow for more than ten bits in subpixel precision measuring; modern llvmpipe seems to have 11.

commit 19fde87d1ba773650754dc1f9d9455107d4a7882
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 21 23:29:11 2013 +0100

    DeconvolutionSharpenEffect needs texture bounce.
    
    Anything else will be incredibly slow. Reported by Christophe Thommeret.

commit 07f3e1e29554ef3dc559ec6c0daf08bfca983122
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 21 22:48:42 2013 +0100

    Fix another stack overflow in EffectChainTest.
    
    Again, found with llvmpipe.

commit e22b57d30085d193da7829e0bc082ad1a310963e
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 21 22:44:24 2013 +0100

    Loosen up a boundary in DitherEffectTest by 10%.
    
    Seemingly needed on my nVidia machine with the newest drivers.

commit 7702ea7f05b7a3ffc625e054b14b784d0029f561
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 21 22:41:18 2013 +0100

    Fix a narrowing conversion within {} in PaddingEffect (C++11 compatibility).

commit e236aa5ff69ca2344ecd29ec774f5d6b16c7b7b4
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 21 22:33:01 2013 +0100

    Fix a stack overflow in EffectChainTest.

commit 2ee9c77ad76449314d28d62f60e10d80039c2353
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 21 22:09:51 2013 +0100

    In OverlayEffectTest, handle that RGB on zero alpha is undefined.
    
    Trickled by llvmpipe.

commit a1028b34cc7d1ce5e1a12ed2222a0e35f8f54bf5
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 21 22:04:00 2013 +0100

    Add sdl-config --cflags and --libs when compiling.

commit 835f017dbbf6bdda89270a461e21e94c3bcb7928
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 21 21:44:00 2013 +0100

    Check return value from SDL_Init().

commit c7e57f5c9fbc1b58d450557cfbffe60480bdd6b7
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 21 20:55:26 2013 +0100

    Use NULL instead of png_voidp_NULL.
    
    Fixes a compile error on OS X, reportedly.

commit b5986420fc150a8c54e907fe7fdd7b89d6e93b55
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 21 20:51:22 2013 +0100

    Don't override GTEST_DIR if it already is set.

commit 045084c435e76384ad8bbe409c1ba7e54895b469
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 21 01:42:28 2013 +0100

    Link against -lpng, since we can now write screenshots in PNG format.

commit ad27ef8410ceeabbadd57ace746867f04337844b
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Jan 20 02:11:53 2013 +0100

    Ask Google Test not to use exceptions.
    
    Gives us slightly cleaner shutdown on error. Found by Coverity Scan.

commit 38dfb378427d1c97113ad7644c39f7695be84c49
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Jan 20 02:04:35 2013 +0100

    Make the internal effects private to EffectChain.
    
    ColorspaceConversionEffect, DitherEffect, GammaExpansionEffect and GammaCompressionEffect
    are all supposed to be used by EffectChain only, so make them private; I've had
    reports of users trying to use these directly, leaving the framework in a confused state.

commit 545c9c70d0be03667a8d78da6be29836fa9c4f1d
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Jan 20 01:55:47 2013 +0100

    Fix a typo in the README.

commit a27be9dd53b8bd14fe7bf8896e8459dcab297119
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Jan 20 01:49:27 2013 +0100

    Add some parameter asserts in DitherEffect, too.

commit c8ddccde29b5dd2c207cc67fa8af2707904557d8
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Jan 20 01:46:36 2013 +0100

    Remove two unused members from EffectChain.
    
    Indirectly found by Coverity Scan.

commit 5a01a8dcee5c095dcebea1f9fdbbb5076022bd6c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Jan 20 01:43:25 2013 +0100

    Another case of NULL initialization to keep Coverity happy.

commit faf8ad966f79932fe890b564d39f96342ae1e844
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Jan 20 01:42:20 2013 +0100

    Add some asserts to SingleResamplePassEffect, to make sure the resolutions makes sense.

commit 6e03d8c6dec4b4639137893fe4e1aff224836f59
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Jan 20 00:31:23 2013 +0100

    Optimize away duplicate conversion nodes.
    
    Sometimes an effect can be used by two other effects that both demand
    the same conversion. If so, we should simply insert a conversion after
    that effect and connect _all_ outputs to that conversion, since
    conversions to linear/sRGB/premultiplied never hurt for us.
    
    Add unit tests for the gamma and colorspace cases. I could have added
    for the alpha case, too, but it got very tedious. :-)

commit a770ba7526844f395b08625480befad83b8fcadf
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Jan 19 23:59:27 2013 +0100

    Set pixel_data[] to NULL in YCbCrInput as well.
    
    Like the previous one, mainly for cleaner crashes.
    Again, found by Coverity Scan.

commit 8e37939a9bc1c902d0929dfae70e8d515de6e684
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Jan 19 23:58:51 2013 +0100

    Another NULL initializer, mostly to get Coverity to be quiet.

commit 9b9a2c002e3fa531d2adde40144b7afb88b07434
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Jan 19 23:54:43 2013 +0100

    Initialize pixel_data in FlatInput to NULL.
    
    Doesn't matter in practice, but will cause cleaner crashes if people
    forget to do set_pixel_data().
    
    Found by Coverity Scan.

commit 020ba675b7be6ceeb284be91039efc0dc0986227
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Jan 19 23:11:33 2013 +0100

    Add unit tests for GlowEffect.

commit 6a8b7d750dff76dee320ad973a52d4d9720510b9
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Jan 19 20:13:51 2013 +0100

    Clamp alpha in MixEffect.
    
    This struck me suddenly one evening as a fix for the issues with alpha in glow,
    and seems to work incredibly well for unsharp mask, too. The rationale is
    outlined in the comment in the frag.
    
    I'll probably be adding some tests for GlowEffect to make sure that it keeps
    working fine, but visual tests so far look very good. The only issue is that
    with destination alpha always being in linear light (as it should be),
    programs that don't blend in linear light, like GIMP and ImageMagick,
    get somewhat dull-looking results with e.g. glow.

commit 745efab6c4ac0886c03a0387f669226d078b5386
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Jan 19 00:04:37 2013 +0100

    Force the LC_NUMERIC locale temporarily to C in finalize(), to avoid problems with locales messing with %f.

commit 27b42af5aa9620979a483075ff424ee943057c9d
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Jan 17 21:43:46 2013 +0100

    Write PNGs instead of PPMs, so that we get destination alpha. Also, ask SDL for a GL context with destination alpha.

commit 05a44e111cc95befc4831006e8c43235c001a945
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Jan 17 02:22:24 2013 +0100

    Add missing unit test.

commit 207384d5c7b8ce40e57decb0160c91da70d54ee6
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Jan 17 01:54:05 2013 +0100

    Remove some leftover debugging code.

commit eddc371976d7586176a74503ec9896159ececa43
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Jan 17 01:50:36 2013 +0100

    Add an effect for padding.

commit 524148c91130cbbe1a506eb9c268750dba74cb95
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Jan 17 01:49:54 2013 +0100

    Add support for vec4 uniforms.

commit cc76ed14530260bc11ba8ebe65fe2b44bc529cfa
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Jan 16 22:14:26 2013 +0100

    There are reports that Movit actually does work with Nouveau.

commit ad25340e74ef8553c8360d5aa3910629529a4634
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Jan 16 21:56:35 2013 +0100

    Fix another issue where an input was used twice. Add unit tests, again.

commit bbf22bd4cc8c00add6b934f19d30a099241ffd84
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Jan 16 21:54:06 2013 +0100

    Make output_dot() cope with effects that are in multiple phases.

commit 7221906173f1cf1ce6913cbe9d62d5ca11e9ee0d
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Jan 16 20:45:14 2013 +0100

    Add an assert saying that if an input has premultiplied alpha, it must also have linear gamma.
    
    This holds true for nodes in general, but I'm not sure enough about all sorts of intermediate
    states that could cause this to be temporarily untrue for other nodes.

commit ba6838ec8b6fb972ccda17b3e6be6e793a4157a3
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Jan 16 20:20:39 2013 +0100

    Print output node in the dot graphs.
    
    This makes it possible to look at the properties of the last
    effect, which is often useful to debug the fix_output_* functions.

commit 616432c0732b8e7780457a1b6320acb46daa9663
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Jan 16 19:17:28 2013 +0100

    Add an assert to expect_equal() to make sure people send in reasonable widths and heights.

commit 5fea9e6cd7aba98acc8b026801d268a3111eba63
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Jan 16 18:28:40 2013 +0100

    Fix a memory leak in expect_equal(). Found by Coverity Scan.

commit f6ccf310656ba0c218574654fbf8e794041efeaf
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Jan 16 01:12:00 2013 +0100

    Refactor RewritingTo{MirrorEffect,InvertEffect} into a reusable template; it started getting silly with the number of Rewriting* classes.

commit 0b13d5089c5967a7a5706f20c1fbb6e98ca40f72
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Jan 15 22:44:22 2013 +0100

    Fix two issues related to non-treelike (diamond) effect graphs.
    
    First of all, we could have an assert failure when an input was used twice.
    Work around it by simply ignoring the input the second time.
    
    This, however, would expose an issue where effects could be emitted in the
    .glsl file out-of-order. Refactor the topological sort code so that it can
    be reused for arbitrary subgraphs, and then use it to topologically sort
    the list of effects in each pass.
    
    Add a unit test to verify that all of this works.

commit 7f7069a0392bf5a5815e2a7452f5879b25959155
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 14 22:48:14 2013 +0100

    Small spelling fix.

commit 756e3ceaca8c190a9e7c310272c1c6a0e41c9999
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 14 18:28:06 2013 +0100

     Remove the code for postmultiplied alpha from OverlayEffect.

commit 602a1c600f39df2575718fc4df61fd706786f6e6
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 14 10:32:06 2013 +0100

    Correct atop → over in the README too.

commit 59d1272f3cf81f593ec3c45a47f215beb478b530
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 14 02:36:23 2013 +0100

    Revert all the changes in demo.cpp that were never supposed to be there in the last commit.

commit b10c546f579c7ccb5939161e61a71cd18a3f9bbd
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 14 02:27:35 2013 +0100

    Add the rest of the files for the premultiplied alpha commit.

commit caa05550e868db406e4b54e69d60b5573f59cb60
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Jan 14 02:27:35 2013 +0100

    Make Movit work in premultiplied alpha.
    
    This is a pretty big change, even though the most visible change right now
    is that OverlayEffect looks better in the edges of upscaled material
    (which you won't really notice too much, given that our handling of
    different resolutions already sucks). Since most material is going to
    assume postmultiplied alpha, we need to track the status around the graph
    pretty much as we already do with gamma and colorspaces, so it's quite
    a lot of new code (and associated test complexity). It really does look
    better, though.
    
    Negative sides: MixEffect has gotten less flexible since it now also
    handles the alpha; for instance, you can't really use it to subtract
    things the same way anymore. Also, I think the glow effect has been broken by
    the changes to MixEffect, so I'll need to fix it and then add a test so it
    doesn't break again.

commit 96591ba1b5bffa57724fa90e13d1f2cdc810ccd5
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Jan 13 21:31:50 2013 +0100

    When running make check, output which checks failed.

commit 105717071781cb6ce338760937e43af29dcb228a
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Jan 13 20:39:26 2013 +0100

    Fix an error in a comment; we are implementing over, not atop.

commit 36ae69017f10987948009bf6f602da5f94e4f780
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Jan 13 12:50:55 2013 +0100

    Fix alpha handling with sRGB textures.
    
    OverlayEffect needs working alpha, so this cropped up. We don't
    really have full alpha handling everywhere, but this is a good
    start; I added some tests here and there to tighten it up a bit.

commit 9c6e299e39c5ce057739da823620c06e8f4230f3
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Jan 13 12:15:08 2013 +0100

    Docmuent the GLEW requirement.

commit 72cb236f13d9e0823acd1ecf261b6e92ace48de2
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Jan 13 12:13:08 2013 +0100

    Updated list of filters in README.

commit 07a8813b233fafdf5a3e6c495e4864d3cc971057
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Jan 12 23:04:58 2013 +0100

    Fix the name of the .dot file for the newly created colorspace input pass.

commit a616ded3842994840ce0cfa365d259f602493779
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Jan 12 22:36:22 2013 +0100

    Defer fetching inputs' color spaces and gamma to finalize().
    
    MLT needs this, as it doesn't know the type of input when building
    the filter chain.

commit 5e05605a85a15944b95d7000745446756cdcbfa8
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Jan 12 21:50:22 2013 +0100

    Added an overlay effect, implementing the atop effect.

commit 49ef2523611e215b327cd26f7bf698d1516edd46
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Jan 10 18:48:07 2013 +0100

    Change the .dot/.frag writing to be dependent on an init_movit() parameter instead of being bound to assertion checking.

commit d7730c1a3f55337a5eda502862b624181bfc97d2
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Jan 9 21:52:55 2013 +0100

    Do not output .dot and .frag debug files if NDEBUG is set.

commit 5614a34b00bbcfdb3d0f5a7dc1fc4205e7088cdf
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Jan 9 20:21:13 2013 +0100

    Allow data files to be fetched somewhere else than the current directory.

commit 29072985d0a00a53e5b578a1444cee61a0c9e1f2
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Jan 9 20:12:06 2013 +0100

    Change to using GLEW everywhere.
    
    We could have done this on Windows only, but it's just as simple to
    keep the dependency list equal on all platforms. This subsumes our
    own extension-checking logic, too.

commit 6c3a366d60469599dd7dd88de89eac1a2c6f38a0
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Nov 27 00:45:21 2012 +0100

    Use the -MP switch (make phony) for better dependency generation when files are removed.

commit 45b3cd2369f829dda090a32a7eb3ce5fc4b362b3
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Nov 27 00:44:13 2012 +0100

    Simplify the Makefile for building unit tests.

commit 9cae3a759486e8dd608b5ff3c119b3a98f86ac6c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Nov 27 00:41:35 2012 +0100

    Only run the pkg-config line for Eigen3 once.
    
    Also, print an error message if pkg-config has failed.

commit 166c94e13ad09dd935e676e9dbc9a1e386417b8f
Author: skal <pascal.massimino@gmail.com>
Date:   Fri Nov 16 21:40:00 2012 +0100

    use the argument from command line as file to process, if present

commit b0520c87cba0e8b6f69747257b3d5b1eb1faf836
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Nov 15 20:07:44 2012 +0100

    Added a rudimentary README.

commit f1a81dca72da9aa5103527b8c9494381204e70c5
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Nov 6 01:46:32 2012 +0100

    Make the dither effect cheat a small bit and use a repeating dither texture no greater than 128x128, to save memory bandwidth.

commit cc9e1cb1ba6a09b38b5e59ccab817a97dd49ca98
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Nov 6 01:30:30 2012 +0100

    Make the ResampleEffect minimum tolerated error smaller; I could really see some artifacts when looking hard.

commit ff9e68a3f5abb179bd7bf9fb84df48327f148583
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Nov 6 01:09:16 2012 +0100

    Add an implementation of RPDF dither on the final output.

commit 3a1e190a989a29edffdfa79bad7994149fc5d27c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Nov 6 00:02:23 2012 +0100

    Add resample_effect_test to .gitignore.

commit 624796b894b3fa04a08b70f4e69ab0fc322da19c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Nov 5 23:56:39 2012 +0100

    Allow the EffectChainTester framebuffer to be in something else than float. This is useful since Mesa's glReadPixels() does not round, but the Intel hardware does.

commit 85526f893719c3267cbfe653cf0095fc1288f49d
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Nov 5 21:36:43 2012 +0100

    Add a variant of expect_equal() for uint8s.

commit 3140175e3160e75d659e596e420afffb596e3c2c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Nov 5 21:24:31 2012 +0100

    Add a function for EffectChainTester to get out the uint8 result.

commit ed30033a26851b96c2c3a0ed2a5751446038fcc3
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Nov 5 21:22:15 2012 +0100

    Factorize out some stuff from EffectChainTester::run().

commit 45c9a794d20296b46c5200fde481af9bf9e810f9
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Nov 3 18:22:15 2012 +0100

    Add a missing const.

commit 5b0f7fe5ff6af6a5e2f1620681ccf809f559393a
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Nov 3 18:12:11 2012 +0100

    Correct some untrue statements about CIECAM02 chromatic adaptation.

commit 181fca60b28290c92207cfb40e27113e4f5f021c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Nov 3 17:39:11 2012 +0100

    When correcting for white balance, move the D65 normalization into compute_lms_scaling_factors() instead of folding it into the LMS matrix. This makes much more sense, and should be equivalent.

commit 26304d874e2d61a0497f563a4daae882f671bf0d
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Nov 3 16:27:11 2012 +0100

    Switch from the HPE matrix (RLAB space) to the Bradford matrix for white balancing.

commit 2ea2c3ea1dffa080c2f7221e50d703731e4aa9bb
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Nov 3 16:16:13 2012 +0100

    Move the XYZ (Y=1) definition of D65 to d65.h.

commit 57061265db1842d85c96bc678297d13b30661ab8
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Nov 3 15:06:43 2012 +0100

    Add a separate header file for the D65 white point.

commit f653817a84050a9b12c953eadd2999c8642ee025
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Nov 3 15:03:15 2012 +0100

    Make some constants static const.

commit c8c1721179a81ac5384fab773e59be544b57128b
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 29 00:02:54 2012 +0100

    Update the comment on movit_texel_subpixel_precision.

commit 9447b2d234394c1d966f77ed87271a3625a81cdd
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 28 19:58:23 2012 +0100

    Add (safe) asserts around all Effect::set_* return values, and add warnings for not checking them.

commit 38fca90c6ffde05e3459c7021e823cef0b3b27ac
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 28 18:48:25 2012 +0100

    Check required extensions at start.

commit 17195eb5da34f03778cde297eb77c486fa0c51bc
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 28 18:14:36 2012 +0100

    Add the weight combining back, now that we have proper control over the interpolation error.

commit 34f5f331bd3b643949ccbb0c3488af2823634d59
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 28 17:40:56 2012 +0100

    Make combine_two_pixels() handle the fact that the GPU has limited subpixel interpolation precision.
    
    Currently we only use it to somewhat improve the total_weight estimate
    to reduce the error slightly. However, the function can now also return
    the total error estimate, which will be useful for knowing when we can
    and cannot combine weights with reasonable error.

commit 2463f8abd9662e08438e23e5c0d0f958ea4fe54e
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 28 16:45:51 2012 +0100

    Do not inline combine_two_samples(); util.h has way too many files depending on it, leading to poor incremental compile times.

commit 5215390259a3b39c576b63853240bbf1f1f6dc46
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 27 21:17:45 2012 +0200

    Revert "Use the bilinear sampling trick in ResampleEffect."
    
    On second thought, this doesn't really look correct; there are some artifacts.
    
    This reverts commit 1a06994ccdeedba95a1bdd2c3c12bb54a7a897f9.

commit 1a06994ccdeedba95a1bdd2c3c12bb54a7a897f9
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 27 21:13:25 2012 +0200

    Use the bilinear sampling trick in ResampleEffect.
    
    This is a bit more complex than in BlurEffect, since we can have negative weights.
    I had to adjust the test that's based on canonical output; I'm actually not 100%
    sure, but everything else passes, the normal output looks fine, and who knows if
    the previous value was actually the more accurate anyway (the difference is
    just barely large enough to trigger the test).
    
    Increases speed by over 50% on my machine.

commit b09a4cb8dec09bcd1e42026d5b229b57e620e47c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 27 21:10:52 2012 +0200

    Factorize the code to compute sampling points for bilinear sampling into a shared function, and support negative weights.

commit 61f2d34b4b34791d346f3a9954975e4e67229f05
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 27 19:57:18 2012 +0200

    Implement wrapping of the resampling parameter texture.
    
    Effectively a no-op frame rate-wise on my machine, but it saves some texture RAM.

commit fb92a4e217a92ecf83b7812cc6933f6f3048b752
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 27 13:38:46 2012 +0200

    Add an effect for Lanczos resampling.

commit 9e62fbe2ac764479c449472d8bda52ac4df0de91
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 17 01:34:22 2012 +0200

    Support different chroma positioning for Cb and Cr. The test is slightly shaky, so it needs high tolerances, but at least there is a test.

commit dbdbdd8f13c846ce751dc455ce4d19cbe5dbb232
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 17 01:07:20 2012 +0200

    Refactor YCbCr chroma offset calculation into a separate function.

commit 771acfe782f3052bb7326ee7f066ed78657754b4
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 17 00:15:15 2012 +0200

    Add a high-cutoff filter to the glow effect.

commit c19875219539e598eb364050ddbb12ae3c64ec31
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 15 20:49:11 2012 +0200

    Add a unit test for Rec. 709 YCbCr.

commit 6f0ec2d7c127b139ed7cc42348bf518236e12dbd
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 15 20:04:42 2012 +0200

    Add a unit test for 4:2:0 YCbCr input.

commit 9cd94a8a037121e5c919c6969425ef98c8f7165f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 15 20:04:26 2012 +0200

    The chroma positioning in YCbCrInput was broken; it moved things too far away when they were different from the center position. Fix.

commit b0532d475da098fd6d8a0475e4b106cac6502163
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 15 02:06:20 2012 +0200

    Fix initial pitch calculation in YCbCrInput when using subsampling.

commit e4962fca40fbd8c229f4ca1103b5addbd7375bd4
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 15 01:57:51 2012 +0200

    Add a unit test for full-range Rec. 601 YCbCr.

commit 9bb98b7ce605f8648a0236cd18efd65a82b7920a
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 15 01:42:40 2012 +0200

    Add a unit test for YCbCrInput (not done yet).

commit 75cfb6ee9d6fda13fae5b59bcdb90c69fdf46435
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 15 00:06:50 2012 +0200

    Fix YCbCrInput returning bogus data if we do set_pixel_data() before finalize.

commit 1a5319a780979cd0bf194d5a77f79d087a3f2202
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 23:02:51 2012 +0200

    Add a coverage target to the Makefile.

commit 6b890b1591c0f6f67c8ec223b32a8cfae11ba874
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 21:04:05 2012 +0200

    Add a unit test for LiftGammaGainEffect.

commit 2c9711e213679e11bea1b0e86bb46af442b22ee0
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 19:32:53 2012 +0200

    Convert from our home-grown matrices to Eigen all over.

commit 8120b8fad20a35936c7d3316d5564af446a20c0f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 18:12:07 2012 +0200

    Remove dead function set_uniform_float_array().

commit b808921f84d52f426bc7bb22480f0806668a45a1
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 18:03:28 2012 +0200

    Add unit tests for WhiteBalanceEffect.

commit 62c039a63a8afdea4ec2da081d0173d7dd1d4578
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 17:07:01 2012 +0200

    The white balance effect was computing all wrong LMS scaling factors, since it was multiplying with the wrong matrices. Fixed.

commit f8677dc447b42b95aee6a9c75df3c698ee67d999
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 15:02:32 2012 +0200

    Make the bools in the demo app bools instead of 0/1 integers (some legacy from the C past there).

commit 372cea5dfb68bb9831261a63e14fa200effaaf54
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 15:00:45 2012 +0200

    Add a missing .gitignore. Again.

commit b16d7433b249c5381fa137d3ac3ef7867ae2eae4
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 15:00:24 2012 +0200

    Add a unit test for FlatInput.

commit 4b8eee7020f14c2321169c07a3cb34e0c48d2f56
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 13:45:29 2012 +0200

    Add a unit test for DiffusionEffect.

commit 57acdb174fffed295ee2255146b03d9efbec1b5f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 13:21:01 2012 +0200

    Add unit tests to EffectChain testing that the sRGB conversion on the GPU works.

commit 1ca4785183b5af9a2a255bba0a28dfdae156470a
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 12:48:03 2012 +0200

    ColorSpace -> Colorspace. I kept typing it wrong, so even though I usually say color space, it is seemingly the best choice. :-)

commit 898a2140fa78eecb3552f63f021c608b239f969c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 12:46:48 2012 +0200

    Add unit tests for colorspace conversion insertion.

commit 0bd42ece563848c10733dba085ea3672f92d2558
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 12:35:35 2012 +0200

    Fix a typo.

commit ece88bd25d49a3c16c79f39063ccd574fbef060f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 12:31:40 2012 +0200

    Add a reference for where the D65 white point comes from.

commit 696fae62e66f803a759afc004c3657ee84420bfe
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 12:29:55 2012 +0200

    Add a unit test for the colorspace conversions.

commit 4625d0a9601e33201f257c68392c4b1830388a79
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 03:12:32 2012 +0200

    Find Y from the xyz and the D65 white point instead of using the luma coefficients from the standards; for sRGB, that was right, but for Rec. 601 it certainly was not. (This was massively fiddly, but in the end became surprisingly simple.)

commit 0490917aca6b8e6057c04c8becc820a8e849a801
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 00:54:07 2012 +0200

    Support conversion to and from the XYZ color space.

commit c9a573370a976df3675d4bd3195a49c854ab7db9
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 14 00:10:50 2012 +0200

    Add a hack so that RGBA pixels are flipped properly in unit tests.

commit af39090a8902411ffc0c89f296a0f8bde9229f60
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 23:51:12 2012 +0200

    Move the GL_UNPACK_ALIGNMENT setting into the texture creation, so that clients won't have to worry.

commit 02dd3a9d0eac3d760dd09cf3690d0c1b92155cf1
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 23:43:12 2012 +0200

    Fix an issue where we could try to incorrectly gamma correct the colorspace conversion inserted at the end, due to a missing propagate call.

commit 0de0202b22a6349d0f9c838947a96eef8155ac90
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 22:26:22 2012 +0200

    Deallocation in YCbCrInput.

commit f898f4106a13b1efdbad85037781f785c2064a76
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 22:18:07 2012 +0200

    More deallocation.

commit 1727b0714398fc4f318048d457a35ca58bc30b59
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 21:56:43 2012 +0200

    Be better at cleaning up at destruction time. Still stuff to do.

commit b5ad8cf45cdf070361a7035a4ddbe2053e696795
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 21:28:41 2012 +0200

    Add unit tests for UnsharpMaskEffect.

commit abb7221a797bb5332f9ff9346396beb4c95dcc34
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 21:18:39 2012 +0200

    Be more consistent about how we handle textures and bouncing; either bounce them, or do not. Trying to do both (in different phases) causes issues currently.

commit 72764bef4a33d18d4282887a188946261937ca8e
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 19:09:33 2012 +0200

    In the graph debug output, color each node according to which phase they are in.

commit 3ebfaf958e7f2dade290fa33427c7cf1b5342978
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 18:43:15 2012 +0200

    Remove stray leftover debugging.

commit 099d2517954be3915504cd1fca99d42ce077f230
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 15:46:12 2012 +0200

    Fix a segfault in the DoubleSaturation test.

commit 7f7488620d1a4644cec64316bd525aa86474e470
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 15:45:38 2012 +0200

    Fix a GLSL warning.

commit 117319c7626096c90052fc855a3d780d7300afc6
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 15:41:41 2012 +0200

    Add missing file mipmap_needing_effect.frag.

commit ac5f7aa64ab690120a71fe45ee4b9bbc56610191
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 15:41:31 2012 +0200

    Add a unit test for BlurEffect.

commit f2841411054c60e47181136aafc86b9982bf573e
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 15:39:19 2012 +0200

    Add a test that verifies resizing works. Incidentially, it is the first test that verifies multi-pass behavior.

commit 45c3b698b97bfcf4036910ee3539bd5eab4e9751
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 15:33:43 2012 +0200

    Unbreak multi-phase rendering after we added the render-to-FBO functionality.

commit 42b10f3a940eb05016764d1a30417ae7f21ae1f3
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 15:26:08 2012 +0200

    Fix a case with non-float input textures.

commit 279e7dc60df32e45c3a6da0aa55fb118c24a88a8
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 14:41:54 2012 +0200

    MipmapGenerationWorks should be run with linear in/out (there was a cut-and-paste snafu).

commit a5c3a852b9a325f1283a2b286a507e499e394892
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 14:14:48 2012 +0200

    Even more informative output when single-pixel test fails.

commit fbe8a2a49401559a456a883d08fe5a7ac9e5f936
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 14:11:03 2012 +0200

    Have expect_equal() pinpoint the pixel with the largest error when that test fails.

commit e7389a6a3041dcb1a0a4dceffd2ca9018b49b2f2
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 13:31:01 2012 +0200

    Radius calculation in the blur was about 10% off. Probably impossible to notice, but I guess nice to fix.

commit cf301ab220c38951c9678973a307bbe5160893be
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 13:14:32 2012 +0200

    Minor stylistic fix in the deconvolution test.

commit a18d86cb6ccfabb8acc03fbdf6970c7c1932a22b
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 12:58:59 2012 +0200

    Add a unit test that tests that mipmap generation works.

commit 7c293685d872fbde282a430067d18f35b9fb7ab6
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 12:58:12 2012 +0200

    FlatInput had broken mipmap generation. Fixed.

commit 51ad3870e0b89d5f07b6b81bc551b00b69d78161
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 12:24:32 2012 +0200

    Add the two missing deconvolution tests.

commit 2e3a9b8deae0d4635a9a97fec04f60f66e8a3682
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 03:16:54 2012 +0200

    Oops, forgot to actually add deconvolution_sharpen_effect_test.cpp.

commit 3aa8b8d095636e410d29605396bf15a2cccc01e6
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 03:13:09 2012 +0200

    Ignore yet more test binaries.

commit 24c005b80fcd13ceb3460e9957fec646eec2b0ee
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 03:12:55 2012 +0200

    Split the TESTS= line in the Makefile now, since it is becoming quite long.

commit 5f8a5bfd39feb9822bb6184955a3653f4ef11dc9
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 03:12:20 2012 +0200

    Add a test for DeconvolutionSharpenEffect. Not completely done yet, but basic functionality is fine.

commit 47d5eca6c49be8f1bfcf62b36f884d97d12ca6f0
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 03:02:17 2012 +0200

    Let users of expect_equal() override the default tolerance limits.

commit 9bfa15dcbddfdeaaba490879362f74d75982ee2f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 03:01:39 2012 +0200

    Fix the mishandling of radius in the Gaussian deconvolution (it was off by a factor of sqrt(2)).

commit 40ae02c50d8832aefe0fb308a9750ae34a7f9919
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 01:06:17 2012 +0200

    Add the new tests to .gitignore.

commit 807c97809f0e7a11d1af600d562d8841370e7250
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 00:59:23 2012 +0200

    Add tests to check that rewriting works, and that gamma conversions are or are not inserted as needed.

commit f0b80b6641dcc4a88398f4c20f4a38fb08fb3dc3
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 00:20:28 2012 +0200

    Add unit tests for back-and-forth conversions through sRGB and Rec. 709 gamma.

commit 1bd28ba3c43338724457bd2cfeb3c15c33347d39
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 00:02:31 2012 +0200

    Rename PROFILE= to COVERAGE=.

commit 2a6eec294c44a1de3693f227f26218b7c88ff0aa
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 13 00:02:18 2012 +0200

    Add a unit test for SaturationEffect.

commit 2fdbe6e32ef5de09db9c890b6cd4355bf65dd1e5
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 23:43:28 2012 +0200

    Support non-grayscale formats in the test pipeline, since we will want color quite soon.

commit 2c8eabbbad9eb99409ef03970cbb0b5b46dda025
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 22:59:38 2012 +0200

    Now that we render to an FBO, we can do with a much smaller window for the test.

commit 7e5058708668a431d1ca90d85271ec868ec94c32
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 22:57:09 2012 +0200

    Set RMS limit much tighter, now that we have floating-point textures.

commit 4b9b81cf1a7a4cd58de803c99f13e60ea0288969
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 22:56:13 2012 +0200

    Add a unit test for GammaCompressionEffect.

commit e8b8c6c9dbb4c5c68b70f43f45764e8dac404bff
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 22:52:28 2012 +0200

    Add unit tests for Rec. 709 gamma expansion.

commit bafa255334266a083416a88986f42d4f1db0739f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 22:47:54 2012 +0200

    Clean up profile files and .dot files.

commit acb217cd876617cf00a4499c211e42445d9c2219
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 22:47:41 2012 +0200

    Do not unconditionally profile (that was a miscommit). Instead, make a PROFILE=1 parameter.

commit dbaedda69333076ce33dce196075729fd11d9558
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 22:30:38 2012 +0200

    If an output is not in the right output gamma but is in linear, that has to be good enough. Fixes an infinite loop.

commit cfc0e5e46303c67cdb9b432fbcaf79f314b86ac9
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 22:24:14 2012 +0200

    If at least one test fails, make check should also fail.

commit df436d955ae20bca1f408c755fc9b76374a1369c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 22:22:07 2012 +0200

    Do not output the shader compile log if it is empty.

commit b76bbc2fce2c56aa65bb8827a3e488c5726a4a9f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 22:17:49 2012 +0200

    Add a test for GammaExpansionEffect. Not done yet.

commit 62504944698295c8c48d88df124855af6874fdfe
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 22:14:46 2012 +0200

    Output the chained shaders to temporary files instead of to stdout, since it's near-impossible to see the test output with so much stuff in the way.

commit 1a595d0396e943d09a1459707785d66406deb354
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 22:04:48 2012 +0200

    Make unit tests render to a floating-point FBO, so that we get full precision.

commit b8b7f286300668679e61a25beb48f353b5a83f43
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 21:27:43 2012 +0200

    Support rendering to a given FBO instead of to the screen.

commit ac539d70a718bce094e1118a3919972445b65979
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 19:45:37 2012 +0200

    Fix some issues with the case where we need to expand gamma to linear, but not compress afterwards.

commit bd1d7adce0950493b957309891ae20544a02421c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 19:21:24 2012 +0200

    Fix step numbering.

commit 0a816c890b86e77471c70e6e3c948492f7b08f21
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 19:06:21 2012 +0200

    Fix a bug where find_nonlinear_inputs() would choke on GammaCompressionEffect and hit an infinite loop.

commit 927e131593a58bea69ae5e742aa5a1657082c9f1
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 18:58:20 2012 +0200

    Yet more Makefile tweaks/fixes.

commit f52ae2984b179e8d91e3d78ecc72888644fce406
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 02:25:34 2012 +0200

    Add a unit test for MixEffect.

commit 58094bb7c80300a2f67a7558d755abf5705c57df
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 02:20:17 2012 +0200

    can_output_linear_gamma() should never return true for float inputs.

commit 5718299276a6966eddc2f3fb5948a6dd1bbdef90
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 01:59:36 2012 +0200

    Split test utilities out into its own file.

commit 9db206dbd95e95d3ddddded6f71056448e690084
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 01:58:57 2012 +0200

    Ignore some gcov stuff.

commit 2854c160a962d4bc956d6cc28fc98ef254cb1918
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 01:50:44 2012 +0200

    Fix an overly aggressive search-and-replace in the Makefile.

commit b2da076fe497ab3cbaa01c1e5230210e8a2cf228
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 01:34:11 2012 +0200

    Add some more simple tests to EffectChainTest.

commit 8eb4f2233b58dd11d276de2db44a8841224e15f5
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 12 00:35:18 2012 +0200

    Start on unit testing (adds a dependency on Google Test). Right now, we have a single trivial test.

commit 89da3437c862c15acb870fbe3175b9e4a0a8244a
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Oct 11 23:57:22 2012 +0200

    Let FlatInput take in float data (sort of kludgy, though). Also remove the get_* methods, since we do not need them.

commit 05842e6ea3346ae7f1f31c661c056d6031b83f24
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Oct 11 21:47:11 2012 +0200

    needs_update should be set even after we have created the texture, since we have not actually filled it with anything.

commit a273634cfd765396c8d01d54fa9122675e15f82f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Oct 11 19:05:04 2012 +0200

    Split the test program from the actual library.

commit dc90a1f6be2e9b2cc5a0d3dfa8ad0c47cdac9af2
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Oct 11 01:34:29 2012 +0200

    Fix snafu in gamma expansion node insertion.

commit 71a27346652e54781215737255f757f6292ff120
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Oct 11 00:52:09 2012 +0200

    Drop the 8-way symmetry; it causes bugs due to normalized texture coordinates.

commit 07e256b26e5ac82c282478a1bd3289d61cac5461
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Oct 11 00:43:02 2012 +0200

    Simplify the refocus shader a bit.

commit 17b9cf4ea40d560afed9e44b6039b02b605855e0
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Oct 11 00:42:49 2012 +0200

    Fix a bug where we would send too few parameters down to the refocus shader.

commit df9cd763a9e433a2f3c9213e7c2342525a5de4cf
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 10 22:41:14 2012 +0200

    Remove stray debugging output.

commit b040c98012f78d8465f494f380991a23bd80c8dd
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 10 22:37:42 2012 +0200

    Remove some leftover out-commented code.

commit 6da2b27aecd1e3ccea21abc6f57e219cd811aab6
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 10 22:30:35 2012 +0200

    Add an unsharp mask effect, to complement the more expensive deconvolution sharpening.

commit ebe6d6ba984b2fb77b365aeacd1f30d4da59964b
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 10 20:19:59 2012 +0200

    Only recompute deconvolution kernel when we need to.

commit 42c35394ef92bb5179fc4879cb55b866fd422d28
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 10 20:02:27 2012 +0200

    Add an implementation of sharpening by FIR Wiener filters.

commit c36321a4c199c24a98cf3acef49e986ea65ae3f1
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 10 00:59:39 2012 +0200

    Inform about input sizes also in the last pass.

commit 322c03693ae23e5a5843dee9dcb74dfb3b7d43d8
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 9 12:16:30 2012 +0200

    Use the input resolution in the blur instead of hard-coding 1280x720. Also fix mipmap calculation by odd sizes, so that we know we will hit exactly on the right pixels when we sample on the first pass.

commit 048e90293b5f5ed4b922d60c4cb47c4b5d24b85e
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 9 12:04:18 2012 +0200

    Spread resolution information throughout the effect chain.

commit 9b4350ffc9c559b6ed666e1858ec7396455ff9ab
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 9 11:38:59 2012 +0200

    Typo fix.

commit 243f8ea98271c0680a8e99e4465ac0075e55e3a5
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 9 01:01:59 2012 +0200

    Make the HSV pickers keep the same luminance no matter what the saturation is. Makes for better LGG controls.

commit 244f6de78a09ab723682ca86b3e00d6a6359f7af
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 9 00:54:29 2012 +0200

    Small precision fix in texture bounce comment.

commit 4a9b478d0cc333e7b47a766d3d27ffe67c08f15a
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 9 00:53:36 2012 +0200

    Pull EffectChain a step closer to input resolution independence.

commit ff3557dfa3acba0f10ff0ea3e555ef431bb456ff
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 8 22:54:26 2012 +0200

    Fix spurious blank lines on stdout.

commit cfe0bc4fa1e2a56eeb12c33e596f79c1292292c8
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 8 20:22:23 2012 +0200

    Add a white balance effect (port of my white balance effect from Frei0r).

commit 24660d2111d0ee97228016a7072304ff657d297b
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 8 18:49:58 2012 +0200

    Save a multiplication in the vignette effect.

commit e655afd53f2e56938bd4e7f72640eff56ef4a1ee
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 8 18:08:40 2012 +0200

    Change so that all modifications to the graph (meta-effects, colorspace information, gamma conversion) works at finalize() time. Fixes a lot of known issues and FIXMEs.

commit fdad0932f08649e69e824ee73a787671a5bc93a5
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 8 15:01:08 2012 +0200

    FlatInput can only auto-expand from linear or sRGB, not e.g. Rec. 601/709 gamma.

commit 65d1c2910d0042649fc8ace11636516f87bd1f48
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 8 14:56:58 2012 +0200

    Rec. 709 color space is the same as sRGB, of course, so do not print it on the graph.

commit 45636792070587fb38cc84927f4e3d9c2ce8bd33
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 8 14:55:37 2012 +0200

    Add edge information about odd things, such as bounces, resizes and non-standard color spaces.

commit f99ad333a7acbb6c8c995dbb036484ae8940c490
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 8 14:45:32 2012 +0200

    Output the graph in dot form at finalize time.

commit 4ccde687b09ebc58d51fcec695bdfc1a35279c2f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 8 14:35:45 2012 +0200

    Remove draw_vertex() declaration; the function was never implemented.

commit 367d5fc610b4111fbf036b0d32becee9118403b2
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 8 12:21:16 2012 +0200

    Move Node and Phase out from being inner classes, given that we soon want to expose Node to effects.

commit 1ea0281f1a64b10335d47fcd4dfb8bc862228d4b
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 8 12:08:26 2012 +0200

    We need to link to -lrt, since we use the clock functions from there.

commit fdfef2b631a081892b65c4411f17d2b7c57f3ee4
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 8 10:39:23 2012 +0200

    Allow changing pitch on YCbCrInput as we go.

commit 416abbec4dbde5ce6b05ada2b2977b18a6718190
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 8 00:16:52 2012 +0200

    Store all the auxillary information about each Effect in a Node structure. Saves heck of a lot of maps and asserts.

commit 3be63715d29707ecbb8d3d0b06e348b645bfaacb
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 7 22:35:21 2012 +0200

    Remove obsolete brainstorming doc.

commit 3d1f6c11c53cd9d3d5c1fb60f4accf050b7f135e
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 7 22:26:13 2012 +0200

    Make the blur use the resize functionality, which also unbreaks the in-between sampling. Oh, lovely blur.

commit b80bc4cfc1142aeb89634d98e50ab5d1bc3342af
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 7 22:25:40 2012 +0200

    Some Makefile tweaks.

commit bacfcc798b175efb1c57fc2cc5d1df6910977ebb
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 7 20:55:17 2012 +0200

    Remove a flipping that is now wrong (again, because phase inputs are always RTT).

commit 10ed9c9d32377e33ebee07a48af454d47f16352b
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 7 20:53:42 2012 +0200

    Fix an issue with textures that are immediately bounced (they need mipmaps in all cases, since “inputs” to a phase now always are RTT inputs). Also add a FIXME to kill bounces in some of those cases.

commit e9d9fc790abdf093176a0314f4588c6b8146e5a2
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 7 20:17:38 2012 +0200

    Support changing resolution in effects, and add a simple ResizeEffect that does that. It is still not possible to query the input size, though.

commit 0d4629f3aa7a9ea1587797577bee7659a7249153
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 7 18:23:34 2012 +0200

    Add missing file opengl.h.

commit a2aacdddde6452df500ee437ed7fdbf7d18b6138
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 7 18:23:27 2012 +0200

    Add .d files to .gitignore.

commit b8a366c0a2c3a1bf4f5173df53b6468f32f195bc
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 7 14:01:15 2012 +0200

    Add simple dependency generation to the Makefile.

commit 3fbc6a0e7ecc008b0bdafcbc576b79c24117859e
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 7 12:54:32 2012 +0200

    Move pixel_format out of the ImageFormat struct, since it is only relevant for FlatInput.

commit ab636361e865c389fe60584562372ec39ac4c511
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 7 12:44:58 2012 +0200

    Move all OpenGL includes into one file.

commit 9dcbd93164611ea111cc29519c18193d4f571ac1
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 7 12:32:30 2012 +0200

    Add YCbCr input. Required a bit of reworking of the sRGB extension stuff, but seems to work fine.

commit ef82f39846c48a654b63797b78bf8b0b8935d348
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sun Oct 7 01:59:04 2012 +0200

    1.0f is not allowed in GLSL; 1.0 it is.

commit 110985baf2b42da4d5992cc7513e9f66695e4659
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 20:04:31 2012 +0200

    mat3() contructor takes elements in column-major order, so fix ColorspaceConversionEffect.

commit 0dc1dfe6444a700ebd2c9f006cba000b90c3a7b0
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 15:35:53 2012 +0200

    Make Input an abstract base class, and move the current functionality into FlatInput. Also change a bit how we deal with adding them.

commit bbf6d754a01960a637e821853cf50a282f2a9163
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 15:04:50 2012 +0200

    Kill the EffectId enum, on the basis of YAGNI.

commit 6c79a9e08302571667a50a219d95354e687bd841
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 15:03:55 2012 +0200

    Fix a warning.

commit 5aae6761385e1d64cb21b8c902f6b47b4f22690a
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 14:35:07 2012 +0200

    Redo the phase generation; we now start at the output end instead of at the inputs, which makes a lot more sense and unbreaks multiple-input scenarios.

commit 626dbd2b95fa5e8137ee1326d7f853a367b3bc6f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 14:34:24 2012 +0200

    Bind input textures to the right sampler, and do it even if we do not need to update it (just draw from it).

commit e1d0cc9aecf612f61d048fe0e4941c17d8f8f2f2
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 12:09:14 2012 +0200

    Open up for multiple inputs. We need to re-think the execution algorithm before it will actually work, though.

commit c3718fbd4be80a2825e7fdc66eb54a516e4c4df1
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 11:43:12 2012 +0200

    Remove another unused member.

commit bd24998a9ebd1e2d296fd6cb419db51e2c6a84fb
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 11:42:40 2012 +0200

    Remove an unused member.

commit 4faa7b922355c43f89efd62418dfa03ebf06b9c2
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 11:40:45 2012 +0200

    Typo fix.

commit 3e356c2cae954440f777a25fe5b3c95734d13f40
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 01:24:17 2012 +0200

    Line-wrap the Makefile a bit.

commit ef7665d0d3854b3464800d8d7fef9a90f14d9a9f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 01:17:39 2012 +0200

    Add a glow effect, and an effect that linearly mixes two sources (because glow needed that).

commit 1e2d23133575fc1cfeb14652e4b383883bf24512
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 01:14:08 2012 +0200

    DiffusionEffect should not have any GLSL stuff in it.

commit e0911a55394fd2b2dac393017950a39fa3e688c8
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 01:06:23 2012 +0200

    DiffusionEffect now needs sRGB primaries, since we compute the luminance.

commit fe785e6f62ab58ef05972850d9275005794505b7
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 00:58:31 2012 +0200

    In overlay matte, use the luminance as a matte instead of each individual color component; it makes more sense to me. Also clamp luminance there to [0,1] to avoid going extrapolating into ugliness, which could happen when we had e.g. lift/gamma/gain before.

commit 4e2afd327f1ef1bb03f1371a9527bc843fe636bd
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 00:48:29 2012 +0200

    Allow Input to set pitch. Currently only before the texture is created, though; we do not support variable pitch.

commit ad0e48a8b82a679f1d2836254ef33320e7162733
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 00:42:32 2012 +0200

    Add missing file image_format.h, and add grayscale support.

commit 6a31570f6a85004d33a83bbe2f77642614361da6
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 00:39:21 2012 +0200

    Generate PBOs on-the-fly instead of having hard-coded numbers.

commit d3cf1194740dbecde06f5e721a7e1910437a7666
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 00:24:33 2012 +0200

    Split inputs into a separate class (descending from Effect) instead of handling them as a special case in EffectChain. Kills some special cases, and paves the road for multiple master inputs soon.

commit f6acc0d1d488567e651220ffd327591c1443f49b
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Sat Oct 6 00:16:36 2012 +0200

    Remember to clear the needs_update flag on 1D textures after upload.

commit a93b0c94f68bf897adfdca95b292494497fa4f7f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 5 21:29:34 2012 +0200

    Rename set_uniforms() to set_gl_state(), and make a corresponding clear_gl_state().

commit 2293282969ee51d9c244df8a3082de0605512537
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 5 16:55:21 2012 +0200

    Mark some appropriate effects as not needing sRGB primaries, and expand the comment on when it is appropriate not to use them.

commit 34121ba75f6274c25c2cee53169819ae96e77d66
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 5 13:01:15 2012 +0200

    Unbreak the final normalizers.

commit 05ae48a62f4a507c1eef75b9220f88f2b9fda563
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 5 12:43:35 2012 +0200

    Add a diffusion effect, and hook it up in the GUI.

commit b0f2d8f7604bfb4c8a9824a3a022d32ef26e12cc
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Fri Oct 5 12:03:49 2012 +0200

    Actually implement multiple inputs to phases. Surprising amounts of stuff needed...

commit 5058b68995b5d39042df42df06d55559ee535d38
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Oct 4 23:02:15 2012 +0200

    Allow an effect to have multiple inputs (although the graph still supports only one master input). Still no support for it in the processing pipeline.

commit 879854382e1f6db14812cd6bd5390ca01f4b1d5a
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Oct 4 22:27:08 2012 +0200

    Prepare for a more DAG-like effect graph. Does not actually do anything differently yet.

commit 5d38e4d0b4293f73fdfd9a2c952f4e3722dd60e3
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Oct 4 21:57:38 2012 +0200

    Revert an unintended change to main.cpp.

commit 6eb839737216564bcaf4645b7ebf6ea9efc2da09
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Oct 4 17:28:15 2012 +0200

    Replace LAST_INPUT with INPUT.

commit f23c7768e6c13d6a719aaea89074d86b74148aeb
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Oct 4 15:53:30 2012 +0200

    Rename needs_many_samples() to needs_texture_bounce(), and update the comment.

commit eb66e8ed648c485ae211e2ed179ca116b7fa65d7
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Thu Oct 4 00:16:49 2012 +0200

    Move the GL_GENERATE_MIPMAP setting to a less broken place.

commit 1943f85578d126865a5d37dd0285a1a807fe8708
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 22:05:52 2012 +0200

    Fix R/B swapping in the SDL conversion.

commit c5ec91799b647b647c57da323acbf5076f9518de
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 20:25:54 2012 +0200

    Yet another use-NULL-instead-of-giving-in-empty-stuff cleanup.

commit a22465673fce8a9db2cf88bccbee72db0e5b4c5e
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 20:23:07 2012 +0200

    Fix a (harmless) Valgrind hit.

commit dae484d2ac79b828fe31d7416fc5838a6d3341ef
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 20:22:36 2012 +0200

    Let SDL convert the pixels instead of doing it ourselves.

commit 0b4a4101426130d2b7037cdb219d5c05b8d4c3d3
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 19:56:22 2012 +0200

    Add a “sandbox effect” that does nothing but is a useful playground for development of new effects.

commit 60cc8cf581ceaac4eb7e636e85f9e6161005701d
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 18:55:24 2012 +0200

    Work around a Mesa bug wrt. mipmap generation.

commit b65675827bcaaa8cd913e46a7210575183d0056f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 18:55:08 2012 +0200

    Give NULL to glTexImage2D() instead of zeroing memory ourselves.

commit 8fe95ce120431f3c593828d0f26185580943c7db
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 17:59:20 2012 +0200

    Mirror does not need linear light or sRGB primaries, of course.

commit e8cff1305e9c4843c6424e3194f4276b031804fc
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 17:56:14 2012 +0200

    Yet more header file comments.

commit e8650c7b7814c5beef59059b8acac3e5e7b8ddc6
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 17:53:10 2012 +0200

    Comment all of *_effect.h.

commit b77dca09201f3373c5466d695338e1e29406072b
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 17:37:18 2012 +0200

    Comment the Effect class.

commit dfc674ba521d6c596399deff06afc2eb1b7b49d7
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 16:48:05 2012 +0200

    Small refactoring.

commit b618b34070d23b6da35c77f004678d8a9e55575b
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 16:46:15 2012 +0200

    Make a new system for meta-effects, and convert the blur to use it. Hides the two-pass nature.

commit 3dbe1e7c09766c2437d92a8c2cbbaeea7de3f610
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 16:30:55 2012 +0200

    Some more GL state paranoia.

commit 0a3c9320e21fc211f0c61a4bda1c6932920c6883
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 16:30:34 2012 +0200

    Flesh out the blur code a little. It actually blurs now, although it is not as pretty as I would like it.

commit a0ced951a3ad27223d71caae71eeeb5c62c6ce77
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 14:55:27 2012 +0200

    Support setting vec4 arrays.

commit 86b456fd6112ba54dd890c4f8be408d297de07d5
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 14:40:13 2012 +0200

    Do not send uninitialized memory as a texture.

commit 0c1fab7813e12580bed0852d9e57b0a3f2768d83
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 12:31:37 2012 +0200

    Set better texture environment for the intermediate textures.

commit ba19dad35d753c81041f9111fa4fd3bce168b319
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 11:52:53 2012 +0200

    Add a hack to restore the miplevels after blurring.

commit 64c2d9b78bc53d93eec8a2b1eb20d6dc1a46561e
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 01:25:50 2012 +0200

    Fix the blur so it is much prettier, by not sampling from a mipmap in the second pass.

commit 7f9e6de676f22a95396f91079030b039ace2245f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 01:14:27 2012 +0200

    Increase the range of the blur control.

commit f25eed80a570ae049f03b098757a070188efbc39
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 01:01:13 2012 +0200

    Add vertical blurring, and fix a bug where not all taps would be used.

commit 75c27c449aabb27ed0b028b57b20d70005a6e447
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 00:56:02 2012 +0200

    Try to adjust the mip levels to get box blur for free as needed.

commit d1ee4a51b67b07a9b0fc00129042561c13967325
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 00:47:13 2012 +0200

    Hook up a blur radius control.

commit c0461658ca2abaa10aae42f40ffee7e5128bc7ab
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 00:45:32 2012 +0200

    Make the blur into a simple, Gaussian horizontal blur. Still not very good.

commit b5e3174594efe9a920621a68d3b28f5e44676d03
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Wed Oct 3 00:20:05 2012 +0200

    Support multiple render phases (with FBOs and all), and make a sample blur effect that uses it.

commit 3915264bd8fde4d550e47c10a67a2741625b9033
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 22:19:31 2012 +0200

    Mark some functions in Effect as const.

commit 143eab5af7f87c2dd28d77a9059fe5543f2cf01e
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 20:45:08 2012 +0200

    Fix indenting in effect_id.h.

commit 2950c89a229eeff9500d619b2ca15c8a4b8eeb29
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 20:37:44 2012 +0200

    Less stupid mirroring.

commit 2ced784c6599cb0b21427481ee17f4c8f6afdada
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 19:58:09 2012 +0200

    Add a new framework for 1D-LUTs via fp16 textures. Make the gamma compression and expansion effects use it.

commit a04ce272078182de6bb49e5ea9834713f3d72cae
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 19:34:11 2012 +0200

    Kill the hard-coded texture enums (yay).

commit 91c70600f2d0a6a42420ee98949cf182859b798f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 18:50:16 2012 +0200

    Kill the vertex shader system; it is too complicated to get it right until we have a full DAG understanding.

commit 74cdd144cf35c403d9a8a3f35420f1eaa3d84cc4
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 14:32:48 2012 +0200

    Revert "Move calculation of normalized position for the vignette into the vertex shader."
    
    This is not correct, since tc can be changed by the fragment shader
    _and_ by later vertex shaders. We need to do some rethinking here,
    seemingly.
    
    This reverts commit 2b4a7d868112b4995bf6699f5b3aa68e9ec2b308.

commit bc31a9072da1d9bfe417fd850e92cabe049fd593
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 14:18:37 2012 +0200

    Add a mirror effect.

commit 2b4a7d868112b4995bf6699f5b3aa68e9ec2b308
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 13:59:31 2012 +0200

    Move calculation of normalized position for the vignette into the vertex shader.

commit 9827902a92487b29f00350788aa1e4de1a5ba8ca
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 13:55:43 2012 +0200

    Fix a confusion in the vertex shader chaining.

commit d4542f76df5d26843c68b1467e76722cffd801a1
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 13:50:48 2012 +0200

    Rename .glsl to .vert/.frag.

commit 873b60b640a96c8fb4c2d8c88c85d20e0a2dca6b
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 13:46:25 2012 +0200

    Chain together vertex shaders, like with fragment shaders.

commit db1fbb73b18b68850f61d1c8b89f2e4d3f7aadc1
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 13:37:57 2012 +0200

    Rename identity.glsl to identity-fs.glsl.

commit 17c083aad45a10df14c38cfe879a87220dfd4fb9
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 13:35:59 2012 +0200

    Rename output_glsl to output_fragment_shader.

commit a5f301c52c22bc29ade2a2b39f4ff3e4b10310a7
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 12:36:39 2012 +0200

    Upload the texture via PBOs. Slight speedup on nVidia, rather neutral on Intel.

commit bc98d3dd04e1fe6c71751b38162024491e3cea70
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 12:12:43 2012 +0200

    Fix a C++11 compatibility issue.

commit 49941686f9e5c86f56b5f3aba7a628d72bc14533
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 11:56:19 2012 +0200

    Upload textures in BGRA format instead of RGB. Somewhat faster on nVidia, somewhat slower on Intel.

commit 2e4309fd8af9ca0a3656a584f8ed8b3fc634263f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 11:48:34 2012 +0200

    Use glTexSubImage2D on second and later uploads.

commit aa72f1070c44ed0217ce1ffde599d5c40864ac4a
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 11:46:59 2012 +0200

    Revert "Slight cleanup in texture upload format selection."
    
    This reverts commit 7ead6f1c15daf8e5a70df583198a8ce58251b0d6.

commit 7ead6f1c15daf8e5a70df583198a8ce58251b0d6
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 11:46:46 2012 +0200

    Slight cleanup in texture upload format selection.

commit fdf859f872d87d0e2ae27e3ff34a8751145c2ae9
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 11:44:51 2012 +0200

    Slight cleanup in texture upload format selection.

commit a1011196ed9c422137522b9053e6f4069bfc827c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 01:36:23 2012 +0200

    Fix float/int divide (it is not allowed).

commit aa262c3b480ebe6fd166bb887abc3439ca53e7a3
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 01:28:16 2012 +0200

    <sys/time.h> is needed for gettimeofday.

commit 96a1cff51a8b7dc45ebe725e0d0685eecce31331
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 01:24:57 2012 +0200

    Less old-style GLSL extension use.

commit 40b66ccabf2c2f448504a41909ff2dda80212af4
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 01:10:40 2012 +0200

    Add fallbacks for systems without proper monotonic clocks (e.g. OS X).

commit 60392f6c6c06e4ccef2cd654de493c6c6ffab86f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 00:49:53 2012 +0200

     Vignette actually looks really nice in linear light; update effectlist.txt.

commit 92fa0d98d417d77e991d88f63d9851271592131a
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 00:46:21 2012 +0200

    Fix a warning.

commit 994ac0c108d8e0f1d1effcad5ba8b4c2d1dd9d28
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 00:46:04 2012 +0200

    Hook up the vignette effect to the sample app.

commit f4516cf70e80bf1153759919c8b2ab1cee37d9ec
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 00:45:55 2012 +0200

    Add a vignette effect.

commit bc5560403f4e43d1a32e5e8d94bca68922647779
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 00:45:08 2012 +0200

    Add vec2 parameter support.

commit 1b4302762db9cf76a29446fb4f7320b33db38e30
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 00:07:05 2012 +0200

    Remove obsolete file todo.glsl.

commit 8c9047448cc46b7e7909613b7cb9309ecb094609
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 00:04:18 2012 +0200

    Make it possible to instantiate the colorspace conversion effect separately.

commit a94fbb7ebe6bd57c0c0a7f4174d97b95e3147519
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Tue Oct 2 00:03:12 2012 +0200

    Flip some need bits in the conversion effects.

commit 758f632c42befae7f2b7af137554429fa544d4cb
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 23:44:26 2012 +0200

    Add color space conversions on input and output.

commit 8bbe79ea2da2bc02c59aaf0d697cff24ddcba73a
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 21:02:55 2012 +0200

    Clean up stuff from the vertex shader.

commit ca8d64aa3d306d31f53979ba95b3f9afdf6e4d92
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 21:01:36 2012 +0200

    Implement the Rec. 709 gamma curve.

commit 193e18b583fde18f2f3b3192d61121f3173e0e27
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 20:49:50 2012 +0200

    Add do-nothing-conversions for gamma expansion/compression if we are already linear. Mostly for completeness.

commit 0b2a4dc36bc5d5ca31797b47d99ee8ade243f86c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 20:45:21 2012 +0200

    Remove the now obsolete load_texture().

commit affe96389941123d20354ad8091977aa196a741c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 20:45:03 2012 +0200

    Use sRGB textures on the input side if applicable.

commit 4e06c14da6d6cbe73b624d98a0671074bdea7968
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 20:40:35 2012 +0200

    Remove the now obsolete hand-coded fragment program.

commit 087adc28dd5b359f28a128aded8fb2c1c69716f2
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 20:37:27 2012 +0200

    Clean up effect enums a bit.

commit f428e5f85aeda850d43c4b134fbb286b574c63fb
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 20:37:19 2012 +0200

    The return value from glGetUniformLocation() is of course signed.

commit 19a5a44c107dbba0e784ffb7ffcbcd8dd8e91119
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 20:35:17 2012 +0200

    Move saturation out into its own effect, and hook up the control.

commit f328fbede6f102cf4568da6e5d7a07e29c01f357
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 20:25:36 2012 +0200

    Send the right inv_gamma_22 variable to the uniforms.

commit bfa58911af9e945f3532a2c48306b4e9e293e0f7
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 20:24:14 2012 +0200

    Actually set all the right uniforms, so we have a picture on screen.

commit 6a6d09d15fe9388db0490249928e5b8252b6b9ce
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 19:55:10 2012 +0200

    Give HSV parameters to LGG effect.

commit 35d1bceaf4ed0527339dc414bc1b070fa44a6e82
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 19:25:03 2012 +0200

    Remove a redundant comment.

commit f8428828cb7776f06bb69a18bf15e07f1cba9f58
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 19:24:21 2012 +0200

    Slightly clearer comments for the custom uniforms in LGG.

commit dc8b571877bef7ad65064dc05a1aeda5dba16ee6
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 19:23:38 2012 +0200

    Add lift/gamma/gain GLSL code. Completely black output, due to lack of uniform setting.

commit f6c44598c9dad9ddd024c5f8f010d179a6d971fd
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 19:16:45 2012 +0200

    Squash linear gamma back into the sRGB curve at the end.

commit 430394b9790b9a7083aac549f607047499788710
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 19:05:43 2012 +0200

    Implement gamma expansion from sRGB.

commit f250ae0ffd74c401511e9db448b86c19f7720f02
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 18:59:38 2012 +0200

    Make the example program actually try to use the effect chain.

commit b8ff086e2b949d7135eb5031edb3606d29400eac
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 18:46:53 2012 +0200

    Make check_error() output the file as well as the line, now that we have several.

commit 4f8d4ab8bd84bfbe7329a1afae3034ec2937bbb5
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 18:45:20 2012 +0200

    Split image loading from texture generation.

commit 8f070dcdd579e19e092a6619115f4b084fbb2c33
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 18:20:35 2012 +0200

    Output convenience uniforms per effect. Also, do not rely on the preprocessor supporting token pasting anymore.

commit f613fca7b528ee848c3a01dd9d0018345f2bb320
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 18:13:42 2012 +0200

    Build with debug info.

commit a592c55caca0fb654bad4ec43b84c46abcee21c2
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 17:57:26 2012 +0200

    Start actually piecing together the GLSL shaders from the effect chain.

commit 928743085b7f0f88b3e1b0e59e2d7ebec7816bd2
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 17:36:22 2012 +0200

    Move slurping of files into its own function.

commit 93b0136eb2bd31043526b95dc3e920bc2ab880ee
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 17:27:09 2012 +0200

    Fix a stray j.

commit b6f8c4f6bbe0648d26b000b4327978bc5063e3f8
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 17:26:41 2012 +0200

    Add a .gitignore to get rid of the junk in git status.

commit a88f299483ffe5068cd2828513078b9103325da8
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 17:26:13 2012 +0200

    Yet more moving of stuff around.

commit e61807327b9a1f98f39dd5e1496254905f78e581
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 17:16:26 2012 +0200

    Move the Effect class out into its own file.

commit 06e169be17d6298bb443271c7defa8b1abf52b8d
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 17:14:17 2012 +0200

    Add parameters and start the effect chain implementation. Rework some of the enums.

commit cc6350402089b7ad686516fbac1c0f4c5236ae45
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 15:17:02 2012 +0200

    Rename test.cpp to main.cpp.

commit 0ba76f4df40e2f9847fbecfca631a34c20bf07f4
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 15:16:50 2012 +0200

    Move the widgets into its own source file.

commit d08c44d915b1149c9de699e66a0466388223603f
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 15:11:20 2012 +0200

    Small Makefile cleanup to prepare for more files.

commit 02d19b8323a1b626acd9d3b4f08bb63f51149cf3
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 15:10:48 2012 +0200

    Split off hsv2rgb() in a separate file.

commit 8df9b9f19175effb728f3b587a65dd753457670e
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 15:04:44 2012 +0200

    Correct some CXXFLAGS stuff in the Makefile.

commit 388960bad3ad40e62457aec060dee5fc5e790735
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 15:04:16 2012 +0200

    Start the API.

commit 259227e2776ce4c6bea4ee164b4d9f2cfd4c7239
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 12:13:07 2012 +0200

    Change to C++.

commit 67b55f9d3843b1d8624222a7afc2bc0d855f3e7a
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 12:11:20 2012 +0200

    Add a Makefile.

commit f3005378f39b1bd42f5b13fba77f083cdfde4d2c
Author: Steinar H. Gunderson <sgunderson@bigfoot.com>
Date:   Mon Oct 1 12:05:48 2012 +0200

    Initial checkin.
